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

Re: svn commit: r11930 - in branches/locking/subversion: include libsvn_fs_base

From: C. Michael Pilato <cmpilato_at_collab.net>
Date: 2004-11-22 20:13:00 CET

kfogel@collab.net writes:

> "C. Michael Pilato" <cmpilato@collab.net> writes:
> > I can attest to Karl's favoring of that idea (we had this conversation
> > in the office the other day). My only concern was related to
> > transportability of locks. *If* we extend our dumpfile format and
> > backing code to handle lock transport, then we want our lock tokens to
> > be backend-inspecific. So, my requirements for our tokens are that
> > they use a consistent format across all the backends (either by
> > sharing the id-generating code or by simply agreeing to a format, such
> > as the above) and that they not be tied to the likes of an
> > auto-incrementing primary key in a particular implementation (since at
> > load-time we'd have to ensure that we got those same indexes again).
> They can be tied to an auto-incrementing key, as long as it gets
> preserved in dumps. (I'm not sure there's any other way to do it,
> without just using UUIDs in the first place.)

It's not the dump that's the problem. It's the load. If our locks
table has an auto-incrementing key (like the 'next-id' item in our
base36 key-using table), and you do this:

   lock foo.c
   unlock foo.c
   lock bar.c

You will have used 2 indexes. You dump that repos (which has one lock
in it, for bar.c), you load into another one. Now, either you have to
tell your database backed "Turn off your auto-incrementer, because I'm
dictating keys to you" or you have to deal with the fact that the one
lock in your dump is only gonna use 1 index in your repos, which means
that it will get a different UID than it had before the dump.

To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Mon Nov 22 20:17:38 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.