Thread (4 messages) flat view 4 messages, 3 authors, 2016-06-15

Re: Git is not scalable with too many refs/*

From: Martin Fick <hidden>
Date: 2016-06-15 22:52:09


Michael Haggerty [off-list ref] wrote:
On 10/01/2011 10:41 PM, Junio C Hamano wrote:
quoted
Martin Fick [off-list ref] writes:
quoted
I guess this makes sense, we invalidate the cache and have 
to rebuild it after every new ref is added?  Perhaps a 
simple fix would be to move the invalidation right after all 
the refs are updated?  Maybe write_ref_sha1 could take in a 
flag to tell it to not invalidate the cache so that during 
iterative updates it could be disabled and then run manually 
after the update?
I
also have some code (not pushed) that adds some intelligence to make
the use case

   repeat many times:
       check if reference exists
       add reference
Would it be possible to separate the two steps into separate loops somehow?  Could it instead look like this:
 
   repeat many times:
       check if reference exists
 
   repeat many times:
       add reference
It might be difficult with the current functions to achive this, but it would allow the cache to be invalidated over and over in loop two without impacting performance since all the lookups could be done in the first loop.  Of course, this would likely require checking for dups before running the first loop.

-Martin
Employee of Qualcomm Innovation Center,Inc. which is a member of Code Aurora Forum
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help