Thread (1 message) 1 message, 1 author, 2021-01-28

Re: [PATCH 0/3] Speed up remove_redundant()

From: Junio C Hamano <hidden>
Date: 2021-01-28 20:21:35

"Derrick Stolee via GitGitGadget" [off-list ref] writes:
Michael Haggerty pointed out that git merge-base --independent is quite slow
when many commits are provided in the input. This boils down to some
quadratic behavior in remove_redundant() because it calls
paint_down_to_common() in a loop.

This series avoids that by using a single commit walk, pushing a flag that
means "this commit is reachable from a parent of a commit in the list." At
the end of the walk, the input commits without that flag are independent.
Yay.  I've been quite unhappy with the loop ever since I wrote it
back in 2012.

Thanks for cleaning it up.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help