We are hitting the same endpoint multiple times and we get intermittent UnambiguousTimeoutException exception. We are running this on 10 core machine.
SDK Version: 3.2.6
Java Code:
ClusterEnvironment.Builder couchbaseEnvironmentBuilder = ClusterEnvironment.builder().ioConfig(IoConfig.enableMutationTokens(true).enableDnsSrv(false)).timeoutConfig(TimeoutConfig.connectTimeout(Duration.ofMinutes(2)));
clusterEnvironment = couchbaseEnvironmentBuilder.build();
paceCluster = Cluster.connect("xxxxxx110035.xxxx.com", ClusterOptions.clusterOptions(
"xxxxxxxxxx",
"xxxxxxxxxx")
.environment(clusterEnvironment));
paceAsyncBucket = paceCluster.bucket("pace").async();
fallbackAsyncBucket = Cluster.connect("xxxxxx110035.xxxx.com", ClusterOptions.clusterOptions(
"xxxxxxxxxx",
"xxxxxxxxxx")
.environment(clusterEnvironment)).bucket("pace").async();
CompletableFuture.allOf(
paceAsyncBucket.waitUntilReady(Duration.ofMinutes(2)),
fallbackAsyncBucket.waitUntilReady(Duration.ofMinutes(2)))
.get();
java.util.concurrent.CompletionException: com.couchbase.client.core.error.UnambiguousTimeoutException: GetRequest, Reason: TIMEOUT {“cancelled”:true,“completed”:true,“coreId”:“0xd38cbae10000000a”,“idempotent”:true,“lastChannelId”:“D38CBAE10000000A/0000000031F9E225”,“lastDispatchedFrom”:“10.99.251.26:56622”,“lastDispatchedTo”:“lpdo50431.xxx.xxxx.com:11210”,“reason”:“TIMEOUT”,“requestId”:16231,“requestType”:“GetRequest”,“retried”:0,“service”:{“bucket”:“pace”,“collection”:“_default”,“documentId”:”XXXX_XXX_XXX::000556C9-9B46-432F-A5B6-042F8400C0B1::V1”,“opaque”:“0x1da0”,“scope”:“_default”,“type”:“kv”,“vbucket”:386},“timeoutMs”:2500}
at java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:331)
at java.base/java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:346)
at java.base/java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:632)
at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:506)
at java.base/java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:2088)
at com.couchbase.client.core.msg.BaseRequest.cancel(BaseRequest.java:189)
at com.couchbase.client.core.msg.Request.cancel(Request.java:70)
at com.couchbase.client.core.Timer.lambda$register$2(Timer.java:157)
at com.couchbase.client.core.deps.io.netty.util.HashedWheelTimer$HashedWheelTimeout.run(HashedWheelTimer.java:715)
at com.couchbase.client.core.deps.io.netty.util.concurrent.ImmediateExecutor.execute(ImmediateExecutor.java:34)
at com.couchbase.client.core.deps.io.netty.util.HashedWheelTimer$HashedWheelTimeout.expire(HashedWheelTimer.java:703)
at com.couchbase.client.core.deps.io.netty.util.HashedWheelTimer$HashedWheelBucket.expireTimeouts(HashedWheelTimer.java:790)
at com.couchbase.client.core.deps.io.netty.util.HashedWheelTimer$Worker.run(HashedWheelTimer.java:503)
at com.couchbase.client.core.deps.io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: com.couchbase.client.core.error.UnambiguousTimeoutException: GetRequest, Reason: TIMEOUT {“cancelled”:true,“completed”:true,“coreId”:“0xd38cbae10000000a”,“idempotent”:true,“lastChannelId”:“D38CBAE10000000A/0000000031F9E225”,“lastDispatchedFrom”:“10.99.251.26:56622”,“lastDispatchedTo”:“lpdo50431.xxx.xxxx.com:11210”,“reason”:“TIMEOUT”,“requestId”:16231,“requestType”:“GetRequest”,“retried”:0,“service”:{“bucket”:“pace”,“collection”:“_default”,“documentId”:“XXXX_XXX_XXX::000556C9-9B46-432F-A5B6-042F8400C0B1::V1”,“opaque”:“0x1da0”,“scope”:“_default”,“type”:“kv”,“vbucket”:386},“timeoutMs”:2500,“timings”:{“totalMicros”:2517252}}
at com.couchbase.client.core.msg.BaseRequest.cancel(BaseRequest.java:184)
… 9 more