Java Couchbase群集断开连接线程卡在等待监视器中

Java Couchbase群集断开连接线程卡在等待监视器中,java,couchbase,Java,Couchbase,我正试图使用cluster.disconnect(Duration.ofSeconds(60))断开与Couchbase群集的连接,但即使等待超时,线程也不会向前移动。我进行了线程转储,发现了以下内容: "Thread-163" #197 prio=5 os_prio=31 cpu=12.51ms elapsed=84.72s tid=0x00007fa4065e2400 nid=0xce03 waiting on condition [0x000070000eada000

我正试图使用cluster.disconnect(Duration.ofSeconds(60))断开与Couchbase群集的连接,但即使等待超时,线程也不会向前移动。我进行了线程转储,发现了以下内容:

"Thread-163" #197 prio=5 os_prio=31 cpu=12.51ms elapsed=84.72s tid=0x00007fa4065e2400 nid=0xce03 waiting on condition  [0x000070000eada000]
   java.lang.Thread.State: WAITING (parking)
        at jdk.internal.misc.Unsafe.park(java.base@15.0.2/Native Method)
        - parking to wait for  <0x0000000702a769b0> (a java.util.concurrent.CompletableFuture$Signaller)
        at java.util.concurrent.locks.LockSupport.park(java.base@15.0.2/LockSupport.java:211)
        at java.util.concurrent.CompletableFuture$Signaller.block(java.base@15.0.2/CompletableFuture.java:1860)
        at java.util.concurrent.ForkJoinPool.managedBlock(java.base@15.0.2/ForkJoinPool.java:3137)
        at java.util.concurrent.CompletableFuture.waitingGet(java.base@15.0.2/CompletableFuture.java:1887)
        at java.util.concurrent.CompletableFuture.get(java.base@15.0.2/CompletableFuture.java:2062)
        at com.couchbase.client.java.AsyncUtils.block(AsyncUtils.java:38)
        at com.couchbase.client.java.Cluster.disconnect(Cluster.java:478)
        at xxx.xxxx.xxxx.xxxx.xxxx.event.eventlistener.MyApplicationSQSListener.lambda$poll$0(FeedScribeSQSListener.java:70)
        at xxx.xxxx.xxxx.xxxx.xxxx.event.eventlistener.Application.$$Lambda$1018/0x00000008013f2c38.run(Unknown Source)
        at java.lang.Thread.run(java.base@15.0.2/Thread.java:832)
我的SDK版本:3.1.2

@Configuration
public class CouchbaseConfiguration {

  @Autowired private CommonProperties properties;

  @Bean
  public ClusterEnvironment clusterEnvironment() {
    return ClusterEnvironment.create();
  }

  @Bean
  public Cluster cluster() {
    return Cluster.connect(
        properties.getCouchbase().getConnectionString(),
        ClusterOptions.clusterOptions(
                properties.getCouchbase().getUsername(), properties.getCouchbase().getPassword())
            .environment(clusterEnvironment()));
  }

  @Bean
  public ReactiveCluster reactiveCluster(Cluster cluster) {
    return cluster.reactive();
  }

  @Bean
  public ReactiveBucket reactiveBucket(Cluster cluster) {
    return cluster.bucket(properties.getCouchbase().getBucket()).reactive();
  }

  @Bean
  public CouchbaseConnector couchbaseConnector(CommonProperties properties) {
    return new CouchbaseConnector();
  }
}