Peter Lundblad wrote:
> cmpilato@tigris.org writes:
>> Author: cmpilato
>> Date: Fri Jan 19 08:49:16 2007
>> New Revision: 23105
>>
>> Log:
>> * branches/issue-2699-dev
>> New feature branch for adding support for all-or-nothing multi-path
>> locks. (And no, I *don't* why this one of a thousand feature
>> requests is interesting to me...)
>
> This sounds cool, although it might be interesting to see a design for
> how to solve this in FSFS before investing too much in the rest.
> What compatibility/format change issues will we have?
Yeah, that was my next step. There are a couple of approached that come
quickly to mind:
lock repos
check for state that should guarantee success (read-only)
do work
if failure (should only be non-Subversion reasons):
die
unlock repos
Or:
lock repos
do work, keeping track of the how-to-undo-it list
if failure (Subversion or non-Subversion reasons):
undo-it
if failure ((should only be non-Subversion reasons):
die
unlock repos
But I definitely need to spend some more time thinking about the problem
before diving in. And while doing so, I'll sing a song about how
beautiful subsystem-provided transactions and atomicity are.
--
C. Michael Pilato <cmpilato@collab.net>
CollabNet <> www.collab.net <> Distributed Development On Demand
Received on Mon Jan 22 17:06:31 2007