gpt4 book ai didi

python - 替换时出现 Couchbase KeyExistsError

转载 作者:太空宇宙 更新时间:2023-11-03 12:05:25 24 4
gpt4 key购买 nike

尝试更新 couchbase 中的实体时出现以下错误:

 File "./*/couchbase_repository.py", line 55, in update self.repository.update(group)
self._connection.replace(couch_doc["id"], couch_doc, persist_to=1, cas=cas)
File "/opt/*/virtualenv/lib/python2.7/site-packages/couchbase/bucket.py", line 377, in replace
persist_to=persist_to, replicate_to=replicate_to)
_KeyExistsError_0xC (generated, catch KeyExistsError): <Key=u'*', RC=0xC[The key already exists in the server. If you have supplied a CAS then the key exists with a CAS value different than speci$

问题是我没有在我的代码中指定 cas 值,因此 couchbase-python-client 源代码 - 默认 cas 值是 zero所以它应该忽略cas验证。

couchbase 服务器版本:3.0.1 社区版 (build-1444)

couchbase-python-client 版本:2.0.4

C 库的版本:

libcouchbase-dev:amd64 2.5.3-1

libcouchbase2-核心:amd64 2.5.3-1

libcouchbase2-libevent:amd64 2.5.3-1

这是调用库的代码:

    def update(self, obj, cas=0):
obj.validate()
couch_doc = self.serializer.serialize_to_database(obj)
self._connection.replace(couch_doc["id"], couch_doc, persist_to=1, cas=cas)

最佳答案

从你的代码来看,你确实在指定 cas:

self._connection.replace(couch_doc["id"], couch_doc, persist_to=1, cas=cas)

您是否尝试过删除 cas 参数?

关于python - 替换时出现 Couchbase KeyExistsError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33437677/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com