apr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Branko ─îibej <br...@xbc.nu>
Subject Re: Problems with DSOs and Pools
Date Tue, 15 Aug 2006 11:01:45 GMT
Joe Orton wrote:
> On Tue, Aug 15, 2006 at 03:33:02AM +0200, Branko ─îibej wrote:
>> It may not actually be necessary to add new functions to APR or
>> anything. An acceptable solution might be to serialize allocations from
>> the global pool, the way pool creation is serialized (IIRC). Allocating
>> from the global pool doesn't happen very often, and if we could safely
>> pass a NULL pool to apr_dso_load (or apr_hash_create, etc.), it think we
>> could live with the potential performance penalty.
> I'm very much unconvinced.  The app can serialize access to the 
> APR-global pool, if it wants to - likewise it could create a special 
> "DSO-holding-pool" from the global pool directly after calling 
> apr_initialize() to avoid the whole issue.

You're still thinking in terms of "the app". Subversion is not an
application. Yes, we could add an svn_initialize function that should be
called by the app that uses SVN libraries right after apr_initialize.
But our API compatibility guarantees (just like APR's) mean we can't
force the use of that function until svn-2.0. Also, there's a large code
base using SVN libs that have to work with newer releases.

Granted, we made a mistake in our API. That doesn't mean there's no
usability problem in APR.

-- Brane

View raw message