couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "James Howe (Commented) (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (COUCHDB-1415) Re-insering a document silently fails after compact is executed
Date Thu, 23 Feb 2012 14:32:49 GMT

    [ https://issues.apache.org/jira/browse/COUCHDB-1415?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13214679#comment-13214679
] 

James Howe commented on COUCHDB-1415:
-------------------------------------

Does this only happen when step 5 is a POST, or are PUTs affected too?
                
> Re-insering a document silently fails after compact is executed
> ---------------------------------------------------------------
>
>                 Key: COUCHDB-1415
>                 URL: https://issues.apache.org/jira/browse/COUCHDB-1415
>             Project: CouchDB
>          Issue Type: Bug
>          Components: Database Core
>    Affects Versions: 1.1.1
>         Environment: Tested on multiple linux platforms
>            Reporter: Viktor Szabo
>             Fix For: 1.3
>
>
> When a document is re-inserted after a compact operation using the same contents it was
originally created, the insert operation is silently ignored, leaving the client unaware of
the fact it's document is not available in the database.
> Can be reproduced using the following sequence of steps:
> alias curl='curl -H "Content-Type: application/json"'
> url="http://localhost:5984/database"
> 1 curl -X PUT $url
> 2 curl -X POST $url -d '{"_id": "bug", "key": "value"}'
> 3 curl -X DELETE "$url/bug?rev=1-59414e77c768bc202142ac82c2f129de"
> 4 curl -X POST "$url/_compact"
> 5 curl -X POST $url -d '{"_id": "bug", "key": "value"}'
> 6 curl -X GET "$url/bug"
>   (bug here)
> 1 {"ok":true}
>   201
> 2 [{"ok":true,"id":"bug","rev":"1-59414e77c768bc202142ac82c2f129de"}]
>   201
> 3 {"ok":true,"id":"bug","rev":"2-9b2e3bcc3752a3a952a3570b2ed4d27e"}
>   200
> 4 {"ok":true}
>   202
> 5 [{"ok":true,"id":"bug","rev":"1-59414e77c768bc202142ac82c2f129de"}]
>   201
> 6 {"error":"not_found","reason":"deleted"}
>   404
> CouchDB shouldn't report "ok" on step 5 and then go on to claim that the doc is deleted.
Also, it seems to work on second try:
> 7 curl -X POST $url -d '{"_id": "bug", "key": "value"}'
> 8 curl -X GET "$url/bug"
> 7 {"ok":true,"id":"bug","rev":"3-674f864b73df1c80925e48436e21d550"}
>   201
> 8 {"_id":"bug","_rev":"3-674f864b73df1c80925e48436e21d550","key":"value"}
>   200

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message