view tests/test-excessive-merge.out @ 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 b2ae81a7df29
children 8feb33c2d153
line wrap: on
line source

1 files updated, 0 files merged, 0 files removed, 0 files unresolved
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
changeset:   4:f6c172c6198c
tag:         tip
parent:      1:448a8c5e42f1
parent:      2:7c5dc2e857f2
user:        test
date:        Mon Jan 12 13:46:40 1970 +0000
summary:     merge a/b -> blah

changeset:   3:13d875a22764
parent:      2:7c5dc2e857f2
parent:      1:448a8c5e42f1
user:        test
date:        Mon Jan 12 13:46:40 1970 +0000
summary:     merge b/a -> blah

changeset:   2:7c5dc2e857f2
parent:      0:dc1751ec2e9d
user:        test
date:        Mon Jan 12 13:46:40 1970 +0000
summary:     branch b

changeset:   1:448a8c5e42f1
user:        test
date:        Mon Jan 12 13:46:40 1970 +0000
summary:     branch a

changeset:   0:dc1751ec2e9d
user:        test
date:        Mon Jan 12 13:46:40 1970 +0000
summary:     test

   rev    offset  length   base linkrev nodeid       p1           p2
     0         0      64      0       0 dc1751ec2e9d 000000000000 000000000000
     1        64      68      1       1 448a8c5e42f1 dc1751ec2e9d 000000000000
     2       132      68      2       2 7c5dc2e857f2 dc1751ec2e9d 000000000000
     3       200      75      3       3 13d875a22764 7c5dc2e857f2 448a8c5e42f1
     4       275      29      3       4 f6c172c6198c 448a8c5e42f1 7c5dc2e857f2

1
79d7492df40aa0fa093ec4209be78043c181f094 644 a
2ed2a3912a0b24502043eae84ee4b279c18b90dd 644 b
2
2ed2a3912a0b24502043eae84ee4b279c18b90dd 644 a
79d7492df40aa0fa093ec4209be78043c181f094 644 b
3
79d7492df40aa0fa093ec4209be78043c181f094 644 a
79d7492df40aa0fa093ec4209be78043c181f094 644 b
4
79d7492df40aa0fa093ec4209be78043c181f094 644 a
79d7492df40aa0fa093ec4209be78043c181f094 644 b

   rev    offset  length   base linkrev nodeid       p1           p2
     0         0       5      0       0 2ed2a3912a0b 000000000000 000000000000
     1         5       6      1       1 79d7492df40a 2ed2a3912a0b 000000000000
checking changesets
checking manifests
crosschecking files in changesets and manifests
checking files
2 files, 5 changesets, 4 total revisions