On Wed, Oct 20, 2021 at 12:19:19PM -0700, Junio C Hamano wrote: > > Running a sequence of traversals like this can be slow, because we may > > walk over the same history again and again. But I think in the usual > > non-octopus cases we'd only have one entry, so we'd only be adding a > > single extra merge-base traversal in most cases. > > > > It does feel like this could be combined with get_can_ff() somehow so > > that we're not adding even that single traversal. But I expect that may > > be hard to do because of the multiple heads (e.g., we cannot use the > > usual ahead/behind code). > > I'd leave such an optimization as a separate topic. This was meant > to be a regression fix. Yeah, I'm definitely OK with that. You might be making performance a little worse with your patch, but getting correctness right is much more important. -Peff