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

Re: Weirdness while testing 1.4.0-rc2 (svnserve processes that don't die)

From: Garrett Rooney <rooneg_at_electricjellyfish.net>
Date: 2006-07-18 02:44:06 CEST

On 7/17/06, Branko ╚ibej <brane@xbc.nu> wrote:

> Oh bother. I must have been smoking something really weird to not notice
> the this would obviously happen.

Don't feel so bad, I should have seen it to...

> Back to the salt mines it is, then ... I think that commit was quite the
> wrong solution, I'll have to come up with something better. Sheeh, but
> pools really are a total lossage in the presence of global caches.

Here's a fix that appears to work. It makes it so that we NULL out
the lock when we clear its pool, and then only try and lock it if it's
non-NULL. This fixes the weird issues Mike was seeing, and should fix
the valgrind problems, although I haven't actually confirmed that.


Fix another global pool destruction ordering problem in the bdb code.

Previously, we potentially tried to use the bdb cache mutex after its
pool had already been cleared.

* subversion/libsvn_fs_base/bdb/env.c
  (clear_cache_lock): New cleanup function, NULLs out the bdb cache lock.
  (svn_fs_bdb__init): Set pool cleanup on the bdb cache pool.
  (acquire_cache_mutex, release_cache_mutex): Don't do anything to the
   lock if it's NULL.

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

Received on Tue Jul 18 02:46:46 2006

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.