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

Re: Atomic updates

From: Dirk Schenkewitz <schenkewitz_at_docomolab-euro.com>
Date: 2005-11-23 10:37:42 CET

Paul Koning wrote:
>>>>>>"Célio" == Célio Cidral Junior <ccidral.newsbox@gmail.com> writes:
>
>
> Célio> Hi, This question was already discussed in this list but I'm
> Célio> raising it up again and bothering you once more. :-)
>
> Célio> What are the chances of atomic updates (on the client side, of
> Célio> course) to be implemented in Subversion? If none, why?
>
> You can do this today. Get the head revision number, then do an svn
> update -r <that rev>
>
> That's what I use when I want an "atomic" update (or checkout) that is
> done in several parts (several svn commands)
>
> paul

That's rather ""atomic"" than "atomic" ;-) since you may still have a
broken WC before the last step is successfully finished.
Does it have any other advantage than guaranteeing that you will not
get a mix of files from different svn revnums because HEAD changed
while you performed the update in several steps?

On first sight I thought of using a temporary directory. Copy all
existing files into it, do the update ontop of it, then:
'mv dir2update dir2update.old && mv dir2update.tmp dir2update &&
rm -r dir2update.old'
Not truely atomic, but at least only two atomic operations followed
by one non-atomic one (but this last one cannot affect the integrity
of the WC), where the 2nd depends on the success of the 1st and the
3rd depending on success of the 2nd. Quite simple.
But there's a problem: You cannot do this if you want to update ".",
something I do rather often.

I like Philip Marek's idea with the overlay, but I wonder if it would
be possible to overlay "." with an atomic operation.

My 0.01 ct
   Dirk

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Wed Nov 23 10:40:19 2005

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.