view tests/test-merge6 @ 5451:0a43875677b1

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.
author Matt Mackall <mpm@selenic.com>
date Thu, 11 Oct 2007 00:46:54 -0500
parents a74586023196
children
line wrap: on
line source

#!/bin/sh

cat <<EOF > merge
import sys, os
print "merging for", os.path.basename(sys.argv[1])
EOF
HGMERGE="python ../merge"; export HGMERGE

mkdir A1
cd A1
hg init
echo This is file foo1 > foo
echo This is file bar1 > bar
hg add foo bar
hg commit -m "commit text" -d "1000000 0"

cd ..
hg clone A1 B1

cd A1
rm bar
hg remove bar
hg commit -m "commit test" -d "1000000 0"

cd ../B1
echo This is file foo22 > foo
hg commit -m "commit test" -d "1000000 0"

cd ..
hg clone A1 A2
hg clone B1 B2

cd A1
hg pull ../B1
hg merge
hg commit -m "commit test" -d "1000000 0"
echo bar should remain deleted.
hg manifest --debug

cd ../B2
hg pull ../A2
hg merge
hg commit -m "commit test" -d "1000000 0"
echo bar should remain deleted.
hg manifest --debug