Thread (5 messages) flat view 5 messages, 2 authors, 2016-06-15

Re: "git reflog expire --all" very slow

From: Linus Torvalds <torvalds@linux-foundation.org>
Date: 2016-06-15 22:46:31

Possibly related (same subject, not in this thread)


On Mon, 30 Mar 2009, Junio C Hamano wrote:
Most of your reflog entries are expected to be reachable from the tip, so
one optimization would be to mark all commits reachable from the tip
upfront, and omit the in_merge_bases() computation for the ones that are
already marked.  Perhaps something like this...
This if anything makes things just go slower.

Not much, but some. It went from 36.566s to 38.070s. That may be in the 
noise, I've not done any sensitivity analysis.

I thought you perhaps had a missing "parse_commit()" making the 
reachability thing not work (look_up_gently parses the object, but if it's 
a tag deref_tag() will dereference it until it hits a commit, but never 
parse the commit). But that wasn't it.

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