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

Re: do away with db/revprops/*/, and a question about 'upgrade' concurrency

From: Daniel Shahaf <danielsh_at_elego.de>
Date: Tue, 12 Jul 2011 05:31:52 +0300

Philip Martin wrote on Fri, Jul 01, 2011 at 15:01:52 +0100:
> Daniel Shahaf <danielsh_at_elego.de> writes:
>
> > Unrelated question: how do we handle the case of a client, linked to
> > libsvn_fs 1.6, that opens an svn_fs_t object and then, concurrently,
> > someone runs 'svnadmin1.7 upgrade'?
> >
> > The FS object is now invalid (and must be closed), but would the old
> > client detect that? For that matter, does our current code error out if
> > db/format is bumped under its feet?
>
> If all the clients goes via libsvn_repos then the upgrade will block
> until there are no readers and then readers will block until the upgrade
> is complete, at which point 1.6 readers will fail because they don't
> support the upgraded format.

Where does that happen? svn_repos_upgrade2() calls get_repos() which
calls lock_repos() which is a no-op if the underlying filesystem is
FSFS.
Received on 2011-07-12 04:32:44 CEST

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