tests/test-rename-dir-merge2
author Bryan O'Sullivan <bos@serpentine.com>
Thu, 19 Jul 2007 12:41:07 -0700
changeset 4928 e8f4e40f285a
parent 4117 c95060a5391a
permissions -rwxr-xr-x
convert/subversion: work around memory leak in svn's python bindings The svn.ra.get_log wrapper attaches the hash of changed paths for every log entry to a global memory pool, so memory consumption increases rapidly, with no way to free it. Our workaround is to call this function in a child process, and feed its results back over a pipe. The memory consumption of the child still grows huge (hundreds of megabytes), but at least it goes away once the reading-the-log phase is done.

#!/bin/sh

mkdir r1
cd r1
hg init
mkdir a
echo foo > a/f
hg add a
hg ci -m "a/f == foo"
cd ..

hg clone r1 r2
cd r2
hg mv a b
echo foo1 > b/f
hg ci -m" a -> b, b/f == foo1"
cd ..

cd r1
mkdir a/aa
echo bar > a/aa/g
hg add a/aa
hg ci -m "a/aa/g"
hg pull ../r2

hg merge

hg st -C