diff --git a/redisson/src/main/java/org/redisson/client/handler/ConnectionWatchdog.java b/redisson/src/main/java/org/redisson/client/handler/ConnectionWatchdog.java index 2347d4b91..af90d62fa 100644 --- a/redisson/src/main/java/org/redisson/client/handler/ConnectionWatchdog.java +++ b/redisson/src/main/java/org/redisson/client/handler/ConnectionWatchdog.java @@ -79,6 +79,10 @@ public class ConnectionWatchdog extends ChannelInboundHandlerAdapter { private void reconnect(final RedisConnection connection, final int attempts){ int timeout = 2 << attempts; + if (bootstrap.group().isShuttingDown()) { + return; + } + timer.newTimeout(new TimerTask() { @Override public void run(Timeout timeout) throws Exception { diff --git a/redisson/src/test/java/org/redisson/connection/balancer/WeightedRoundRobinBalancerTest.java b/redisson/src/test/java/org/redisson/connection/balancer/WeightedRoundRobinBalancerTest.java index 0257efd6a..3af754992 100644 --- a/redisson/src/test/java/org/redisson/connection/balancer/WeightedRoundRobinBalancerTest.java +++ b/redisson/src/test/java/org/redisson/connection/balancer/WeightedRoundRobinBalancerTest.java @@ -46,7 +46,7 @@ public class WeightedRoundRobinBalancerTest { slave.stop(); RedissonClient clientCopy = client; - await().atMost(5, TimeUnit.SECONDS).until(() -> assertThat(clientCopy.getBucket("key").get()).isNull()); + assertThat(clientCopy.getBucket("key").get()).isNull(); } finally { if (master != null) { master.stop();