[
https://issues.apache.org/jira/browse/COUCHDB-188?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12689742#action_12689742
]
Matt Goodall commented on COUCHDB-188:
--------------------------------------
Testing against trunk shows that the new behaviour still has the same error. I
think the following test shows the problem.
couchTests.bulkdocs_delete_create = function(debug) {
var db = new CouchDB("test_suite_db");
db.deleteDb();
db.createDb();
var results = db.bulkSave([{_id: 'foo'}]);
var orig_rev = results[0].rev;
var results = db.bulkSave([{_id: 'foo', _rev: orig_rev, _deleted: true},
{_id: 'foo'}]);
T(!results[0].error);
T(results[1].rev != orig_rev);
T(!results[1].error);
T(results[1].rev != orig_rev);
};
> _bulk_docs fails when deleting and adding a doc with the same id
> ----------------------------------------------------------------
>
> Key: COUCHDB-188
> URL: https://issues.apache.org/jira/browse/COUCHDB-188
> Project: CouchDB
> Issue Type: Bug
> Components: Database Core
> Affects Versions: 0.9
> Environment: CouchDB revision 730414.
> Reporter: Matt Goodall
> Fix For: 0.9
>
>
> CouchDB returns a "412 Precondition Failed" when the list of changes sent to
> _bulk_docs deletes a document and later creates a document with the same id
> as the deleted document:
> {"docs": [
> {"_id": "docid", "_rev": "<rev>", "_deleted": true},
> {"_id": "docid"}
> ]}
> Once fixed, the response JSON document will return the same docid twice in
> the list but it's presumably ordered consistently with the request data so
> any client should be able to understand the response.
> Demonstrating the problem using curl is easy enough:
> $ curl -X PUT http://localhost:5984/test
> {"ok":true}
> $ curl -X PUT -d "{}" http://localhost:5984/test/docid
> {"ok":true,"id":"docid","rev":"4140747751"}
> $ curl -X POST -d '{"docs": [{"_id": "docid", "_rev": "4140747751",
> "_deleted": true}, {"_id": "docid"}]}' http://localhost:5984/test/_bulk_docs
> {"error":"conflict","reason":"Document update conflict."}
> Note: this is likely related to COUCHDB-172.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.