Hi all, Hi took recent 5.8.0 release and some project tests were running really slow compared with 5.7.1 I took a closer look and CuratorFramework.close method is really slow when ZK server is stop. I have included a test that makes reproduction easy I am running Manjaro with OpenJDK 17 When test is running with Curator 5.7.1 closing Curator instance takes 1200 millisWhen test is running with Curator 5.8.0 closing Curator instance takes 20000 millis Looks to me there is something wrong here, BUT wanted to double check with you. Best regards, Cheva
package com.cheva.grantor; import static java.util.concurrent.TimeUnit.SECONDS;import static org.junit.jupiter.api.Assertions.assertTrue; import java.time.Duration;import java.time.Instant; import org.apache.curator.framework.CuratorFramework;import org.apache.curator.framework.CuratorFrameworkFactory;import org.apache.curator.retry.RetryOneTime;import org.apache.curator.test.BaseClassForTests;import org.junit.jupiter.api.Test; class CuratorCloseSlow extends BaseClassForTests { @Test void tesCuratorCloseSlow() throws Exception { Instant t0; try (CuratorFramework cf = CuratorFrameworkFactory.newClient(server.getConnectString(), new RetryOneTime(1_000))) { cf.start(); assertTrue(cf.blockUntilConnected(2, SECONDS)); cf.create().forPath("/jejeje"); server.stop(); Thread.sleep(100L); t0 = Instant.now(); } Instant t1 = Instant.now(); long closeDurationMillis = Duration.between(t0, t1).toMillis(); System.out.println("Close Duration took " + closeDurationMillis + " secs"); assertTrue(closeDurationMillis < 2_000L); }}