Brian Candler wrote: > On Fri, Mar 27, 2009 at 08:36:05PM +0000, Tim Parkin wrote: >> Yes.. but we're not trying to guarantee consistency, just trying to >> prevent inconsistency where possible > > In that case, I'm afraid I don't really understand what the goals are. Do > you want to be able to guarantee a rollback, or not? If you don't care about > rollback always being successful, then you can just PUT back the old > documents. >
Yes you are right.. we would like to be able to close the chance for conflicts in a local database whilst dealing with conflicts caused by replication. We've come up with a few scenarios that limit the chance of conflicts but the only scenario that removes it is atomic changes (as far as we can tell - although because we're not sure we aren't saying we need atomic changes , just that we need to close the chance for conflicts on local changes). Just replacing the documents leaves opportunity for someone else to grab the documents before they are removed. We've tried using some form of transactional change using markers but this is quite complicated and still leaves a window of opportunity for *local* inconsistency. We do want to guarantee a rollback, is there a way to do this without atomic changes? If there isn't then, yes, we will probably need some form of atomic change. Tim
