[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

memory-leak - svn::repos instances are not destroyed properly

From: Max Voit <m.voit_at_math.uni-goettingen.de>
Date: Fri, 14 Oct 2011 00:33:08 +0200

Hi,

developing an application dealing with many repositories the existence
of paths within that repositories had to be checked.
Using something like:

    my $repos = SVN::Repos::open($localpath) or die "no such repo";
    my $fs = $repos->fs;
   
    $ispath =
    $repos->fs->revision_root( $fs->youngest_rev)->is_dir($path);

    undef($fs);
    undef($repos);

resulted in a persistent memory usage of approx. 300MB for ~ 3000 calls,
though undefing the references of the objects.

Attached is a small sample script, showing the problem with 1000
calls - resulting in 200M with nothing but the directory in question in
the repository. Repository-size seems to matter. (the application uses
near productive repos)

running with
    libsvn1 1.6.6dfsg-2ubuntu1.3
    libsvn-perl 1.6.6dfsg-2ubuntu1.3
    perl 5.10.1-8ubuntu2.1

kind regards,
Max Voit

Received on 2011-10-14 06:14:13 CEST

This is an archived mail posted to the Subversion Users mailing list.