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

Re: [PATCH] RA sessions should always be loaded from the same pool

From: Nix <nix_at_esperi.org.uk>
Date: 2005-07-28 00:27:54 CEST

On Wed, 27 Jul 2005, Philip Martin uttered the following:
> Nix <nix@esperi.org.uk> writes:
>
>> On Wed, 27 Jul 2005, Philip Martin announced authoritatively:
>>> The DSO will get unloaded when the pool used to load it is
>>> cleared/destroyed. Does the parameters hash persist longer than the
>>> DSO? That doesn't sound right to me, but then the auth stuff has so
>>> many layers I gave up trying to follow it some time ago :-(
>>
>> It feels wrong to me, too, but it appears to outlast the pool used by
>> the RA *loader*, which (from experiment ;) ) may not be the same pool.
>
> I gave up trying to follow the auth stuff. However, at around line
> 720 svn_ra_dav__open calls svn_auth_set_parameter and passes things
> allocated from its pool and these get stored in the hash passed via
> the callbacks argument, so it looks like the hash could well have a
> longer lifetime than the dav session.

That's my understanding, too. I seem to remember encountering a comment
saying that it was meant to last as long as the neon connection or
something like that...

Reproducing it is easy, anyway: `svn ls' under --enable-dso :)

> Perhaps a pool cleanup function
> should clear the auth parameters? I wonder if there are other cases
> where svn_auth_set_parameter does something similar?

None that I could find in the two cases where DSOs are unloaded (in
other cases, it doesn't seem to matter as much).

>>> I don't think --enable-dso gets much testing during development, the
>>> build broke in the run up to 1.2 and it took longer than usual to get
>>> noticed.
>>
>> Well, I never build without it, so if there's blatant breakage I'll
>> let you know :)
>
> Interesting, what do you see as the advantage of --enable-dso?

Simply that I use svnserve a lot more than ra_dav, and my svn server
is so small that keeping the number of shared libs loaded down counts
(or at least it counted in the days before prelink).

I really should just upgrade that ancient crappy tiny server. But for
now I'll keep building with --enable-dso just so that I can tell when
it breaks like this :)

-- 
`Tor employs several thousand editors who they keep in dank
 subterranean editing facilities not unlike Moria' -- James Nicoll 
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Jul 28 00:30:01 2005

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