On Fri, Mar 16, 2012 at 7:09 PM, Robert Newson <[email protected]> wrote:
> That advice probably dates to when we made a fully random UUID.

That advice based on wiki note:
http://wiki.apache.org/couchdb/HTTP_Document_API#POST

...and fully explained in method description:

> If doc has no _id then the server will allocate a random ID and a new 
> document will be created. Otherwise the doc’s _id will be used to identity 
> the document to create or update. Trying to update an existing document with 
> an incorrect _rev will raise a ResourceConflict exception.

> Note that it is generally better to avoid saving documents with no _id and 
> instead generate document IDs on the client side. This is due to the fact 
> that the underlying HTTP POST method is not idempotent, and an automatic 
> retry due to a problem somewhere on the networking stack may cause multiple 
> documents being created in the database.

If docid is specified on client, PUT request is used instead of POST
one. Workaround is already known: use /_uuids server resource for doc
ids source, but implementing this trick on library level is not good
idea due to it force to produce additional requests behind of scene.

--
,,,^..^,,,

Reply via email to