annotate tests/test-merge8 @ 4946:e8f4e40f285a

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.
author Bryan O'Sullivan <bos@serpentine.com>
date Thu, 19 Jul 2007 12:41:07 -0700
parents efbe24c7d8d9
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3389
efbe24c7d8d9 Test for ba7c74081861 (update dirstate correctly for non-branchmerge updates)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
1 #!/bin/sh
efbe24c7d8d9 Test for ba7c74081861 (update dirstate correctly for non-branchmerge updates)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
2
efbe24c7d8d9 Test for ba7c74081861 (update dirstate correctly for non-branchmerge updates)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
3 # Test for changeset ba7c74081861
efbe24c7d8d9 Test for ba7c74081861 (update dirstate correctly for non-branchmerge updates)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
4 # (update dirstate correctly for non-branchmerge updates)
efbe24c7d8d9 Test for ba7c74081861 (update dirstate correctly for non-branchmerge updates)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
5 hg init a
efbe24c7d8d9 Test for ba7c74081861 (update dirstate correctly for non-branchmerge updates)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
6 cd a
efbe24c7d8d9 Test for ba7c74081861 (update dirstate correctly for non-branchmerge updates)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
7 echo a > a
efbe24c7d8d9 Test for ba7c74081861 (update dirstate correctly for non-branchmerge updates)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
8 hg add a
efbe24c7d8d9 Test for ba7c74081861 (update dirstate correctly for non-branchmerge updates)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
9 hg commit -m a
efbe24c7d8d9 Test for ba7c74081861 (update dirstate correctly for non-branchmerge updates)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
10 cd ..
efbe24c7d8d9 Test for ba7c74081861 (update dirstate correctly for non-branchmerge updates)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
11 hg clone a b
efbe24c7d8d9 Test for ba7c74081861 (update dirstate correctly for non-branchmerge updates)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
12 cd a
efbe24c7d8d9 Test for ba7c74081861 (update dirstate correctly for non-branchmerge updates)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
13 hg mv a b
efbe24c7d8d9 Test for ba7c74081861 (update dirstate correctly for non-branchmerge updates)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
14 hg commit -m move
efbe24c7d8d9 Test for ba7c74081861 (update dirstate correctly for non-branchmerge updates)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
15 echo b >> b
efbe24c7d8d9 Test for ba7c74081861 (update dirstate correctly for non-branchmerge updates)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
16 hg commit -m b
efbe24c7d8d9 Test for ba7c74081861 (update dirstate correctly for non-branchmerge updates)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
17 cd ../b
efbe24c7d8d9 Test for ba7c74081861 (update dirstate correctly for non-branchmerge updates)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
18 hg pull ../a
efbe24c7d8d9 Test for ba7c74081861 (update dirstate correctly for non-branchmerge updates)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
19 hg update