为什么我通过Couchbase Sync Gateway收到409 Conflict删除文档?

时间:2017-05-17 06:40:50

标签: couchbase couchbase-sync-gateway

任何人都可以向我解释为什么我会在尝试删除文档时收到此回复吗?

curl -X DELETE --header 'Accept: application/json' 'http://localhost:4985/mydb/uprofile:testing'

当我跑步时,我得到:

{
    "error": "conflict",
    "reason": "Document exists"
}

怎么回事?

1 个答案:

答案 0 :(得分:0)

当两个编写器处于脱机状态并保存同一文档的不同版本时,通常会发生冲突。

快速修复首先从syn-gateway获取文档和

curl -X GET --header 'Accept: application/json' 'https://localhost:4985/uprofile%3Atesting/mydb?attachments=false&revs=false&show_exp=false'

然后从文档中获取_rev值。然后尝试删除如下

curl -X DELETE --header 'Accept: application/json' 'https://localhost:4985/uprofile%3Atesting/mydb?rev={_rev value}'

我相信这会奏效, 但要想永久解决问题,请在哪里动态解决冲突,检查文档https://developer.couchbase.com/documentation/mobile/current/guides/sync-gateway/resolving-conflicts/index.html