You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Garrett Rooney <ro...@electricjellyfish.net> on 2006/11/06 15:44:23 UTC

Re: Perl bindings using up descriptors

On 10/31/06, bfc0713@verizon.net <bf...@verizon.net> wrote:

> Fair enough.  It's just that the code to reproduce the problem is so
> simple, it seems that someone else may have hit it.  My real code
> to load up subversion is a little more involved of course.  But it
> still sets up no callbacks for logging, going through checkin results, etc.
>
> The code below will show one connection after the checkout, and 2
> after the checkin.  Anything talking to the repository will add another
> connection (until I'm out of descriptors).

If I had to guess I'd say the problem is that you're allocating
everything in the Perl binding's default pool, so it won't get cleaned
up until the process exits.  If you start using subpools that should
help.

-garrett

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: Perl bindings using up descriptors

Posted by bf...@verizon.net.
Absolutely right, the other thread "Repeated operations with perl bindings.."
covered this as well.

I'm now doing this to initiate:

$pool = SVN::Pool->new_default;
$ctx->pool($pool);

..and periodically doing this to start a new pool..

undef $pool;
$pool = SVN::Pool->new_default;
$ctx->pool($pool);

I doubt the undef is necessary. 

Thanks!

On Mon, 6 Nov 2006, Garrett Rooney wrote:

> On 10/31/06, bfc0713@verizon.net <bf...@verizon.net> wrote:
> 
> > Fair enough.  It's just that the code to reproduce the problem is so
> > simple, it seems that someone else may have hit it.  My real code
> > to load up subversion is a little more involved of course.  But it
> > still sets up no callbacks for logging, going through checkin results, etc.
> >
> > The code below will show one connection after the checkout, and 2
> > after the checkin.  Anything talking to the repository will add another
> > connection (until I'm out of descriptors).
> 
> If I had to guess I'd say the problem is that you're allocating
> everything in the Perl binding's default pool, so it won't get cleaned
> up until the process exits.  If you start using subpools that should
> help.
> 
> -garrett
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org