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

Re: svn commit: rev 3445 - trunk/subversion/libsvn_wc

From: Karl Fogel <kfogel_at_newton.ch.collab.net>
Date: 2002-10-23 05:13:41 CEST

Philip Martin <philip@codematters.co.uk> writes:
> Is this log file atomic? If the log file fails, or is interrupted,
> during the the second copy and translate is it possible that base_name
> is incomplete? That would mean that when cleanup reruns the log file
> it will not prodoce the correct result.
>
> If possible, the first copy and translate should be run outside of the
> log file as it doesn't modify the working copy. That may mean that
> some care has to be taken that the right properties are visible. Then
> the log file need only contain the second copy and translate, and if
> it is interrupted it should be safe to rerun it.

Interesting! Yes, I think you're right. I think the solution is to
find the right interface level and make it atomic (i.e., operate on a
tmp file, then mv). It's probably at the svn_wc_copy_and_translate
level or higher, I'll take a look.

And there's another sense in which my fix papers over a deeper
problem: why did translation do anything when no svn:eol nor
svn:keywords properties were set? That is, it should have been okay
to do the SVN_WC__LOG_CP_AND_TRANSLATE, because no translation should
have happened (and that code *does* toggle the x-bit afterwards if
appropriate, so there was a reason to invoke the code path).

There's some more investigation to do here, I'm looking at it now.

Thanks, Philip.

-K

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Wed Oct 23 05:43:53 2002

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.