Revert "PackWriter: Do not delta compress already packed objects"
This reverts commit 67b064fc9f
.
The "tiny optimization" introduced by 67b0 turns out to have a big
savings on wall-clock time when the object store is very slow (e.g.
the DHT support in JGit), but comes with a much bigger penalty in
space used by the output stream. CGit packed with 67b0 enabled is
7 MiB larger than it should be (36 MiB rather than 28/29 MiB). The
much bigger Linux kernel repository gained over 200 MiB, though some
of this may have been caused by a smaller window setting.
Revert this patch as PackWriter should be optimizing for space used
rather than time spent, since its primary use is network transfer, and
that isn't free.
Change-Id: I7413a9ef89762208159b4a1adc5a22a4c9245611
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
This commit is contained in:
parent
53db854185
commit
2610eaf386
|
@ -909,10 +909,10 @@ public int compare(ObjectToPack a, ObjectToPack b) {
|
|||
|
||||
private int findObjectsNeedingDelta(ObjectToPack[] list, int cnt, int type) {
|
||||
for (ObjectToPack otp : objectsLists[type]) {
|
||||
if (otp.isReuseAsIs()) // already reusing a representation
|
||||
continue;
|
||||
if (otp.isDoNotDelta()) // delta is disabled for this path
|
||||
continue;
|
||||
if (otp.isDeltaRepresentation()) // already reusing a delta
|
||||
continue;
|
||||
otp.setWeight(0);
|
||||
list[cnt++] = otp;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue