Thread (47 messages) 47 messages, 4 authors, 2016-09-08

Re: [PATCH v2 05/38] refs: create a base class "ref_store" for files_ref_store

flat view

From: Stefan Beller <hidden>
Date: 2016-09-05 05:18:00

On 04.09.2016 20:53, Michael Haggerty wrote:
On 09/04/2016 10:40 PM, David Turner wrote:
quoted
On Sun, 2016-09-04 at 18:08 +0200, Michael Haggerty wrote:
quoted
+/* A linked list of ref_stores for submodules: */
+static struct ref_store *submodule_ref_stores;
I don't like the per-submodule stores being in a linked list, which
requires a linear search.  Stefan has, I think, been doing a bunch of
work to scale git to support on the order of thousands of submodules,
which this potentially breaks.  What about a hashmap?
Well I did mostly usability up to this point, not efficiency in terms
of fast execution.
I agree it's not ideal, but this linked list is not new. Before this
patch the same code was in `files-backend.c`, and before patch [03/38]
essentially the same linked list was stored as `submodule_ref_caches`.
So this is not a regression, and I'd rather not address it in this patch
series.

CC Stefan in case he'd like to put it on his radar. Honestly, I've never
checked how often the submodule reference cache is used in real life.
I think I need to spend some time on the data structures eventually.

Thanks for cc'ing

Stefan

Michael
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help