You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Matyas Selmeci <ma...@cs.wisc.edu> on 2012/03/15 19:48:03 UTC

sqlite, afs and svn 1.7

Hi all,

So apparently SVN 1.7 uses Sqlite to store working copy metadata. It 
also uses Sqlite to store repository metadata, but only if repo-sharing 
is enabled. Is that correct?

In our department, we use AFS for network storage. We have both our 
repository on it, and generally put our working copies on it as well. 
Occasionally this means that Sqlite databases get corrupted--a brief web 
search reveals that this could be because AFS only has file-level 
locking, but lies about also having byte-range locking.

Our repository is still using whatever format was in 1.4, so it doesn't 
use Sqlite. Is it safe to upgrade as long as we disable repo-sharing, or 
will SVN use Sqlite for some other reason anyway?

Is there a way to turn off using Sqlite for the working copies, or some 
other way of safely using working copies on AFS? Or do we have to 
downgrade to 1.6?

(The specific version of SVN we're using is 1.7.1, by the way).

Thanks,
-Matyas Selmeci
University of Wisconsin-Madison



Re: sqlite, afs and svn 1.7

Posted by Michael Diers <md...@elego.de>.
On 2012-03-15 20:06, Daniel Shahaf wrote:
> Matyas Selmeci wrote on Thu, Mar 15, 2012 at 13:48:03 -0500:
[...]
>> Is there a way to turn off using Sqlite for the working copies, or
>> some other way of safely using working copies on AFS? Or do we have
>> to downgrade to 1.6?
> 
> It's not possible to make 1.7.x avoid using SQLite for wc's.  Perhaps
> you can recompile SQLite such that it doesn't use byte-range locking.

It would be interesting to see if TMate Software's SVNKit (and their
implementation of SQLite called SQLjet) can cope with AFS locking.

They have a beta release of SVNKit 1.7; it comes with a command line client.

http://svnkit.com/
http://sqljet.com/

-- 
Michael Diers, elego Software Solutions GmbH, http://www.elegosoft.com

Re: sqlite, afs and svn 1.7

Posted by Daniel Shahaf <da...@elego.de>.
Matyas Selmeci wrote on Thu, Mar 15, 2012 at 13:48:03 -0500:
> Hi all,
> 
> So apparently SVN 1.7 uses Sqlite to store working copy metadata. It
> also uses Sqlite to store repository metadata, but only if
> repo-sharing is enabled. Is that correct?
> 

Yes, except that you mean "representation sharing".

> In our department, we use AFS for network storage. We have both our
> repository on it, and generally put our working copies on it as
> well. Occasionally this means that Sqlite databases get corrupted--a
> brief web search reveals that this could be because AFS only has
> file-level locking, but lies about also having byte-range locking.
> 
> Our repository is still using whatever format was in 1.4, so it
> doesn't use Sqlite. Is it safe to upgrade as long as we disable
> repo-sharing, or will SVN use Sqlite for some other reason anyway?
> 

As of 1.7, the answer is "the former".

> Is there a way to turn off using Sqlite for the working copies, or
> some other way of safely using working copies on AFS? Or do we have
> to downgrade to 1.6?
> 

It's not possible to make 1.7.x avoid using SQLite for wc's.  Perhaps
you can recompile SQLite such that it doesn't use byte-range locking.

> (The specific version of SVN we're using is 1.7.1, by the way).
> 
> Thanks,
> -Matyas Selmeci
> University of Wisconsin-Madison
> 
>