FSFS has no read-write locks. It is a fundamental design goal of FSFS goal
that reads should never block; anything that changes that should have a very
very strong justification. (Not that you are here, AFAICT.)
On Jan 5, 2009 5:31 AM, "Hyrum K. Wright" <hyrum_wright_at_mail.utexas.edu>
-----BEGIN PGP SIGNED MESSAGE-----
It doesn't use the write lock currently, but modifying it to do so would
probably solve the problem. When I originally wrote packing, I intended it
be single-threaded, and if somebody attempted to run two instances in
well, Don't Do That. Using the write lock won't let 'svnadmin pack' run any
quicker, (i.e., the process isn't parallelized between two concurrent
instances), but it would prevent the race condition Daniel describes.
When we were chatting on IRC the other day, I wasn't sure if upgrade used
write lock, or a read-write lock (does FSFS even have such a thing?) and I
didn't have time to check. If we can get away with using the write-lock,
I believe we can, it seems to be the most maintainable solution going
As an aside, I've been thinking that letting pack notify of progress would
useful, especially for the big repositories on which it was intended to run.
David Glasser wrote: > You mean svnadmin pack doesn't just work within the
FSFS write lock? That > ...
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.8 (Darwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
-----END PGP SIGNATURE-----
Received on 2009-01-05 21:50:09 CET