On 08/02/2009, at 3:52 PM, Damien Katz wrote:

No, CouchDB replication doesn't support replicating the transactions. Never has, never will. That's more like transaction log replication that's in traditonal dbs, a different beast.

So just to be clear, replication ignores MVCC? And there is therefore no way to achieve any form of consistency, even the weaker ACID you've proposed - which sounds like it's really only Durability. I presume it at least replicates according to update_seq? If so, would it be difficult to ensure that the update_seq that the replicator sees is always on an MVCC boundary? That would allow for transactional replication of the form I'm talking about.

For the new bulk transaction model, I'm only proposing supporting eventual consistency. All changes are safe to disk, but the db may not be in a consistent state right away.

Or indeed, ever.

Not necessarily, and even if they did, it's likely that they'll have multiple browser windows open.

What's the front end written in?

On OSX, an Objective-C app that provides an embedded Safari connecting to an embedded Ruby/Merb admin server, although I'm thinking of changing to Yaws et al. That provides a traditional OS app, with a GUI that looks like iTunes, provided via HTML. The admin app can then replicate/download web applications written in e.g. Ruby (for now) which do the real work.

On Windows, something similar, I presume .NET/C++/Gecko. Discussed in the contract RFI I posted.

Antony Blakey
--------------------------
CTO, Linkuistics Pty Ltd
Ph: 0438 840 787

Human beings, who are almost unique in having the ability to learn from the experience of others, are also remarkable for their apparent disinclination to do so.
  -- Douglas Adams


Reply via email to