On Wed, Aug 01, 2001 at 04:55:39PM -0500, Ben Collins-Sussman wrote:
> Here's a little status mail about exactly how we're closing in on M3,
> which is currently slated for 2 weeks from today. Overall things look
> good. Our hope is that after August 15th, we'll be running a
> dedicated Apache/SVN server for this project. That means all
> developers will need to use SVN to contribute. :-)
>
> * DB_RUN_RECOVERY: (unassigned)
>
> Still need to write cross-process locking function so that the
> repository can repair itself when this error is returned. We
> believe APR now has the means to help us with this.
Are there any plans for how you plan to solve this?
Taking a brief look at the subversion code, you use Berkeley DB
transactions though I don't see any evidence of Berkeley DB locks in
libsvn_fs/. Unless you're doing locking, I think the chances for
encountering DB_RUN_RECOVERY are minimal. What does subversion do if a
transaction has begun (txn_begin) and a signal interrupts the server
before txn_commit() or txn_abort()?
When we cannot get a lock on an object, we try a few times then error
out with a message to the user that they must run a program that opens
the database in DB_RECOVER mode. The database code ensures that the
program running with DB_RECOVER is the *only* process which has the
database open (we use fcntl to synchronize access to the database
for all programs that perform RW operations).
--
albert chin (china@thewrittenword.com)
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Oct 21 14:36:35 2006