Jan Lehnardt wrote:

You can do that, too. With attachments, you'd have it all in one
place and would not need to write your views in a way that they
don't pick up old revisions. That said, it is certainly possible to
store older revisions in other documents, if that solves your
problems.

Cheers
Jan
--
well I might be missing something about the way couchdb handles attachments but this doesn't sound good to me. Adding attachments to hold the revision history means that the attachments have to be replicated each time a revision happens. Also a replication conflict is pretty much the same thing as a revision, a client application would have no knowledge of a replication conflict happening but this would be good to see in a wiki-like page history. I can imagine in a distributed system it would be very hard for the clients to maintain a revision history as attachments. As for writing views to not pick up old revisions, I think all applications should assume that all documents are at all times carrying a bundle of prior versions and replication/save conflicts. One of the nasty things in Notes is that most applications assume that replication conflicts don't happen and can break when they do happen. I think a major feature of Couchdb is sensible handling of revisions and conflicts. Purging revisions and conflicts is going to be necessary for some applications, but in others it is desirable to retain all versions. It would be good at least to be able to specify which databases to run compaction on and which to exclude. What is the proposed rule for compaction? Just deleting all revisions it finds? Deleting old revisions over a certain age? Another thought, it would be nice perhaps to run compaction on some servers but not on others for replicas of the same database. Thus a bunch of offline clients could compact fairly frequently and aggressively, however a central server they all replicate with that has lots of disk space could retain all versions. I am thinking in particular of the scenario of OLPC XO laptops replicating with a school server.

Alan.

--
Alan Bell
The Open Learning Centre

Web: www.theopenlearningcentre.com
Mob: +44 (0)7736 778908
Tel: +44 (0)8444 849388

The Open Learning Centre is a trading name of Bell Lord Ltd,
a company registered in England and Wales #05868943.
VAT Registration #GB 901 4715 55


Reply via email to