revlog: break up compression of large deltas
Python's zlib apparently makes an internal copy of strings passed to
compress(). To avoid this, compress strings 1M at a time, then join
them at the end if the result would be smaller than the original.
For initial commits of large but compressible files, this cuts peak
memory usage nearly in half.
1 files updated, 0 files merged, 2 files removed, 0 files unresolved
resolving manifests
overwrite None partial False
ancestor 583c7b748052 local fb3948d97f07+ remote 40da226db0f0
searching for copies back to rev 1
unmatched files in other:
b
c
all copies found (* = to merge, ! = divergent):
c -> a *
b -> a *
checking for directory renames
a: remote moved to c -> m
a: remote moved to b -> m
copying a to b
copying a to c
merging a and b
my a@fb3948d97f07+ other b@40da226db0f0 ancestor a@583c7b748052
removing a
merging a and c
my a@fb3948d97f07+ other c@40da226db0f0 ancestor a@583c7b748052
0 files updated, 2 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
-- b --
0
1
2
-- c --
0
1
2