首页 > 解决方案 > 用于增强耐用性的 Couchbase 客户端配置

问题描述

我正在尝试在我的 couchbase java 应用程序中实现 ATPlus 扫描一致性。我已经更新了我的查询以包括consistentWith(mutationState)

RawJsonDocument courseJsonDocument = toRawJsonDocument(course, true);
RawJsonDocument insertedJsonDocument = bucket.insert(courseJsonDocument);
MutationState insertMutationState = MutationState.from(insertedJsonDocument);
.....
N1qlQuery.simple(GET_COURSE_BY_ID_QUERY, N1qlParams.build().consistentWith(mutationState));

我正在尝试实现 read-your-own-write,但是当我在插入文档后立即运行查询时,什么也没找到,所以我一定做错了什么。我认为我所缺少的实际上是在客户端配置上启用了增强的持久性。

我看到了如何在 .NET 中执行此操作的示例,但我无法弄清楚如何在 JAVA 中“启用增强的持久性”。这是我的集群配置:

Cluster cluster = CouchbaseCluster.create(DefaultCouchbaseEnvironment.builder()
        .queryServiceConfig(QueryServiceConfig.create(1, 100))
        .mutationTokensEnabled(true)
        .observeIntervalDelay(Delay.fixed(100, TimeUnit.MICROSECONDS))
        .connectTimeout(timeout)
        .build(), 
        clusterHost);

标签: javacouchbase

解决方案


推荐阅读