couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Robert Newson <>
Subject Re: Making conflicts first class citizens
Date Wed, 18 Apr 2012 09:03:30 GMT
Hi Paul,

I expanded on it here:

(As an aside, the all_or_nothing:true setting for bulk_docs is being

The motivation for all these changes is that knowledge of conflicts,
and how to handle them, with the current API ends up happening very
late in the development cycle and, frequently, *post* development and
into production and maintenance. We think it better to make the
multi-master model, and its consequences, clearer and simpler to all
up front. It's a great model but you need to understand it, hiding
portions of it by default is a hindrance.

This is not to say that you won't be able to hide these things with a
setting. The full discussion and design of these items has not yet
taken place, so it's too early to say.


On 18 April 2012 09:51, Paul Hirst <> wrote:
> I saw this idea on
> "Conflicts as first class citizens: Surface the conflict on read, and always accept a
write, assuming it passes validation."
> I was wondering if anyone could expand on this?
> On write, conflicts will be rejected at the moment which is really handy from a simplicity
point of view and in many use cases it's a good enough solution. If you use the all_or_nothing:true
option through the bulk API then you can currently write conflicting documents and this is
(as I understand it) exactly what replication does.
> So, is this idea, about changing the default behaviour to act as the all_or_nothing option?
Does it get rid of the ability to detect and reject conflicts at write time? Lastly, why does
anyone want it when we seem to have the best of both worlds at the moment?
> ________________________________
> Sophos Limited, The Pentagon, Abingdon Science Park, Abingdon, OX14 3YP, United Kingdom.
> Company Reg No 2096520. VAT Reg No GB 991 2418 08.

View raw message