On Mon, Nov 27, 2000 at 11:03:44PM +0100, Branko Cibej wrote:
> sussman@tigris.org wrote:
>
> > + - ? should the update interface also have the same API as above?
> > + It's not not necessary, since updates aren't atomic like commits.
> > + But it might be nice for consistency...
>
> An update of a single file (patch, merge, prop changes, metedata
> changes) *must* be atomic, or a flaky network connection will regularly
> corrupt the working copy. But that's all, I guess; apart from that, an
> update can be restarted.
>
> Note: multiple adds/deletes in a directory must be applied atomically,
> too, by the same reasoning.
These are different.
1) corrupting a single file is bad
2) cross-file dependency problems due to partial updates
In the former, we have corruption. In the latter, we just have a
synchronization issue. SVN does not need to make (2) atomic because the user
can always run an update again (or back up to a sync'd set). Heck, what if
the user updates a single file, but leaves other? Or users commit changes
that don't sync properly.
Point is: (1) is a bug/problem, but (2) is not.
Cheers,
-g
--
Greg Stein, http://www.lyra.org/
Received on Sat Oct 21 14:36:15 2006