couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Matt Goodall <matt.good...@gmail.com>
Subject Re: [jira] Closed: (COUCHDB-188) _bulk_docs fails when deleting and adding a doc with the same id
Date Sat, 24 Jan 2009 20:37:34 GMT
2009/1/24 Matt Goodall <matt.goodall@gmail.com>:
> Hi,
>
> I'm a bit confused why this was closed. Perhaps a description of the
> "new behaviour" is available somewhere?
>
> The only mention of anything related to a change in _bulk_docs I've
> *noticed* is about not failing everything in the list of updates
> (might be nice if that was optional, actually) and the associated
> error reporting. However, that doesn't necessarily fix the problem I
> described.

Actually, I think I misunderstood the change. It seems it's only to
say what document failed, i.e. better error reporting, in which case,
a) the change sounds good, b) there is nothing to make optional, c) I
still don't think it addresses the issue. Please correct me if I'm
wrong!

>
> Can anyone explain how the planned change fixes things?
>
> Thanks, Matt
>
> 2009/1/24 Jan Lehnardt (JIRA) <jira@apache.org>:
>>
>>     [ https://issues.apache.org/jira/browse/COUCHDB-188?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
>>
>> Jan Lehnardt closed COUCHDB-188.
>> --------------------------------
>>
>>       Resolution: Invalid
>>    Fix Version/s: 0.9
>>
>> bulk update will get a new behaviour in 0.9. Closing
>>
>>> _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.
>>
>>
>

Mime
View raw message