Re: [PATCH] Introduce get_octopus_merge_bases() in commit.c
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Jun 9, 2008, 23:20 UTC
- Message-ID
- <7vy75edwlx.fsf@gitster.siamese.dyndns.org>
- In-Reply-To
- <alpine.DEB.1.00.0806100006140.1783@racer>
Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:
Show 16 quoted lines
> On Mon, 9 Jun 2008, Junio C Hamano wrote:
>
>> Miklos Vajna <vmiklos@frugalware.org> writes:
>>
>> > Exactly. I modified merge_bases_many() to use a commit list.
>>
>> I just looked at your f755fb6; from the point of view of merge_bases()
>> which is far more often used, I think this is not an improvement but
>> actively wrong thing to do. Most of the time callers compute merge base
>> of two, and the codepath should be optimized for that case.
>
> But how much work is
>
> struct commit_list list = { two, NULL };
>
> merge_bases_many(one, &list);But (1) that is not what f755fb6 does; it does commit_list_insert() that has an allocation, and (2) how much work is to count, allocate and pass array for slow and less frequent codepath which octopus-merge-base is?