Subject: Re: git gc --aggressive led to about 40 times slower "git log --raw"

From: Jonathan Nieder <[email-masked]>
Date: Tue, 18 Feb 2014 07:59:22 -0800

David Kastrup wrote:
> Duy Nguyen <[email-masked]> writes:

>> Likely because --aggressive passes --depth=250 to pack-objects. Long
>> delta chains could reduce pack size and increase I/O as well as zlib
>> processing signficantly.
[...]
> Compression should reduce rather than increase the total amount of
> reads.

--depth=250 means to allow chains of "To get this object, first
inflate this object, then apply this delta" of length 250.

That's absurdly long, and doesn't even help compression much in
practice (many short chains referring to the same objects tends to
work fine).  We probably shouldn't make --aggressive do that.
Something like --depth=10 would make more sense.

Hoping that clarifies,
Jonathan