On Jul 17, 8:04 pm, "rupert.thurner" <rupert.thur..._at_gmail.com> wrote:
> On Jul 17, 9:54 am, Philip Martin <philip.mar..._at_wandisco.com> wrote:
>
> > "rupert.thurner" <rupert.thur..._at_gmail.com> writes:
> > > it seems that the python bindings leak memory, and there seems no test
> > > covering this?
>
> > It's possible. Please provide more details.
>
> the problem seems to be in svn_ra_replay and/or svn_ra_get_log. what i
> tried to do is:
> python svnmem.py
> valgrind python svnmem.py
>
> for a start, i tried to run the test case fromhttp://subversion.tigris.org/issues/show_bug.cgi?id=3052with
> svn-1.6.12, but it produces a segmentation fault here. see below for
> the script.
now it works ... and running it for 100'000 revisions slowly increases
the memory. but the main problem seems to be replay. you have an
example? i did not find anything in the test subversion testcases.
#!/usr/bin/python
import svn.client
import svn.core
import svn.ra
pool = svn.core.Pool()
client = svn.client.create_context(pool)
client.config = svn.core.svn_config_get_config(None)
client.auth_baton =
svn.core.svn_auth_open([svn.client.get_simple_provider(pool)], pool)
ra = svn.client.open_ra_session("http://gcc.gnu.org/svn/gcc", client,
pool)
def rcvr(orig_paths, rev, author, date, message, pool):
if orig_paths is not None:
for x in orig_paths:
orig_paths[x]._parent_pool.destroy()
print rev
svn.ra.get_log(ra, [""], 0, 100000, 0, True, False, rcvr)
client = svn.client.create_context(pool)
Received on 2011-07-17 21:56:26 CEST