java - Couchbase:文档更新期间出现 NOT_STORED 错误
问题描述
我们正在运行 Couchbase Server CE 5.0.1 集群并使用2.7.2 版中的 java-client与其通信以存储 JSON 文档。
我们使用子文档 API执行文档更新,例如:
final AsyncMutateInBuilder asyncMutateInBuilder = asyncBucket.mutateIn(createDocumentId(profileId)).upsertDocument(true);
final SubdocOptionsBuilder optionsBuilder = SubdocOptionsBuilder.builder().createPath(true);
asyncMutateInBuilder.upsert(path, value, optionsBuilder)
asyncMutateInBuilder.execute()
在这些更新期间,我们经常收到带有神秘消息的CouchbaseExceptionNOT_STORED
:。示例堆栈跟踪:
"error":"com.couchbase.client.core.CouchbaseException",
"stacktrace":"com.couchbase.client.core.CouchbaseException: NOT_STORED at
com.couchbase.client.java.subdoc.SubdocHelper.commonSubdocErrors(SubdocHelper.java:101) at
com.couchbase.client.java.subdoc.AsyncMutateInBuilder$2$1.call(AsyncMutateInBuilder.java:1330) at
com.couchbase.client.java.subdoc.AsyncMutateInBuilder$2$1.call(AsyncMutateInBuilder.java:1276) at
rx.internal.operators.OnSubscribeMap$MapSubscriber.onNext(OnSubscribeMap.java:69) at
rx.observers.Subscribers$5.onNext(Subscribers.java:235) at
rx.internal.operators.OnSubscribeDoOnEach$DoOnEachSubscriber.onNext(OnSubscribeDoOnEach.java:101) at
rx.internal.producers.SingleProducer.request(SingleProducer.java:65) at
rx.Subscriber.setProducer(Subscriber.java:211) at
rx.internal.operators.OnSubscribeMap$MapSubscriber.setProducer(OnSubscribeMap.java:102) at
rx.Subscriber.setProducer(Subscriber.java:205) at
rx.Subscriber.setProducer(Subscriber.java:205) at
rx.subjects.AsyncSubject.onCompleted(AsyncSubject.java:103) at
com.couchbase.client.core.endpoint.AbstractGenericHandler.completeResponse(AbstractGenericHandler.java:508) at
com.couchbase.client.core.endpoint.AbstractGenericHandler.access$000(AbstractGenericHandler.java:86) at
com.couchbase.client.core.endpoint.AbstractGenericHandler$2.call(AbstractGenericHandler.java:540) at
com.netflix.hystrix.strategy.concurrency.HystrixContexSchedulerAction$1.call(HystrixContexSchedulerAction.java:56)
...
是否有人面临类似问题或知道根本原因是什么?我在文档和服务器日志中查找有关此类异常根本原因的任何信息,但失败了 - 在服务器日志中我没有看到任何相应的日志,并且文档在这种情况下没有提供任何解释/故障排除。
感谢您的任何建议或解释!
解决方案
服务器返回“NOT_STORED”。由于您说“经常”而不是始终如一,并且您提到现在已经很古老的 5.0.1,我怀疑它与旧版本中的某种缺陷有关。
推荐阅读
- python - 将 Pandas DataFrame 单元格中的字典转换为 DataFrame 列
- docker - 我无法在 docker 中运行的 django 中上传多个文件
- javascript - 可以访问特定的子类型吗?
- swift - Url 在 Postman 中有效,但在 Swift 应用程序中无效
- python - Kivy - 如何使用 pandas 读取 CSV 文件
- r - R - 如何“创建”或绘制缺失数据?
- python - Discord bot 不会上线,除非它是管理员
- windows - Windows API 禁用过滤键对话框?
- c++ - 如何在 constexpr 函数中使用非静态类成员?
- javascript - 我可以在 React 中调用使用 javascript 创建的变量吗?