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

Re: Making fsfs generate unique transaction names

From: Daniel Berlin <dberlin_at_dberlin.org>
Date: 2007-06-16 19:34:47 CEST

On 6/13/07, Blair Zajac <blair@orcaware.com> wrote:
> I'm making a svn filesystem network aware using Ice RPC and one of the
> things I'm running into is that FSFS transactions are not unique. BDB
> seems to generate transaction names via a sequence, so this isn't an issue.
>
> I have the ability for a client to begin a transaction remotely and then
> refer to that transaction to do work. In FSFS, if a client begins a
> transaction, gives the transaction name to another process, which then
> closes it, and a third process begins a new transaction based on the
> same revision, then it will get the same transaction name and the owner
> of the original transaction will be operating inside a different
> transaction and will be able to abort the transaction, which it should
> not be able to do.
>
> So I'd like to make the transaction names unique, using something like
>
> "%s-%05ds-%s-%05d" % (apr_gethostname(),
> apr_uid_current(),
> apr_time_now(),
> i)
>
> where i is incremented until it finds a non-existent directory name.

apr-util has apr_uuid_get to get new UUID's, and apr_uuid_format to
turn them into strings.

Is there some reason you can't use it?

Otherwise, I was going to suggest this myself as part of a design i'm
working on for 2.0's merge tracking.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Jun 16 19:34:54 2007

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.