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

Re: Subversion's use of Berkeley DB [#11511]

From: Branko Čibej <brane_at_xbc.nu>
Date: 2004-12-09 23:16:01 CET

Justin Erenkrantz wrote:

> --On Thursday, December 9, 2004 10:58 PM +0100 "Branko ?ibej"
> <brane@xbc.nu> wrote:
>
>> This is all irrelevant because we can't rely on Apache here. It's quite
>> reasonable to use all three RA methods to access the same repository, so
>> any such serialisation mechanism must go into libsvn_fs_base.
>
>
> No, it's not. We should add an RA method that indicates that the
> process is being initialized and advise SVN to perform recovery.

You'd put FS back-end implementation details in an RA method? Yikes.

> libsvn_fs_base can then decide through other means what to do with
> it (i.e. via a new named shared memory segment that does
> refcounting). For example, if another process has the repository
> open, then it can skip the check. However, for mod_dav_svn, the time
> to invoke the check would be at the post_config hook. This also
> allows immediate feedback whether the repository is in a 'good' state
> before the rest of httpd is initialized. If it fails the check, then
> httpd will never come up: which, IMHO, is a good thing. -- justin

This would also imply that mod_dav_svn opens every repository it's
configured for in the post-config hook, and keeps it open for the
lifetime of the httpd process. AFAIK these days mod_dav_svn opens the FS
for every request, more or less; and you have to do the check at every
fs_open, not in some RA method.

-- Brane

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Fri Dec 10 04:19:39 2004

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.