On 17/02/2009, at 9:26 AM, Robert Newson wrote: >> The point of doing it in the server is that every node guarantees >> Monotonic >> Writes, and you never have to worry about failing because you can't >> achieve >> it. Given the current server implementation, IMO it's more likely >> than not >> that you would fail. > > This comment leaves me puzzled which is entirely the fault of my poor, > tired brain. More likely my poor explanation. Current CouchDB replication semantics are very unfriendly to Monotonic Writes, because they only replicate the data of the head revision (and conflict sources). Compaction makes it theoretically worse by deleting data that wouldn't get replicated, but I say theoretically because compaction is only a barrier to fixing the problem - replication already acts as though constant compaction was occurring. The proposed revision stemming does however make it practically worse because all records of writes disappear from a prefix of the document revisions, and such removal occurs at multiple unaligned points in the linear write log. There's no equivalent to Bayou's handling of log truncation. I haven't described an alternative to the current multi-node proposal (which isn't a formal proposal). My comments purely concern the current implementation of single-node operation and replication. Antony Blakey ------------- CTO, Linkuistics Pty Ltd Ph: 0438 840 787 He who would make his own liberty secure, must guard even his enemy from repression. -- Thomas Paine