From ca2ea59a9602ebdfdb5665b4fb8b86a400534078 Mon Sep 17 00:00:00 2001 From: Nikita Koksharov Date: Mon, 30 Nov 2015 11:24:58 +0300 Subject: [PATCH 1/3] Update README.md --- README.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/README.md b/README.md index 8a925365c..4287d2d7f 100644 --- a/README.md +++ b/README.md @@ -76,6 +76,11 @@ Recent Releases ================================ ####Please Note: trunk is current development branch. +####30-Nov-2015 - version 2.1.6 released +Fixed - connection pool regression bug +Fixed - connection init during `Node.ping` and `ClusterNode.info` invocation + + ####24-Nov-2015 - version 2.1.5 released Feature - new methods with `limit` option support were added to `RLexSortedSet`: `lexRange`, `lexRangeHead`, `lexRangeHeadAsync`, `lexRangeTail`, `lexRangeTailAsync`, `lexRangeAsync` (thanks to jackygurui) Feature - new methods with `limit` option support were added to `RScoredSortedSet`: `valueRange`, `valueRangeAsync`, `entryRange`, `entryRangeAsync`, `valueRange`, `valueRangeAsync` (thanks to jackygurui) From 3c132084ff53ae121895ea95f9fcc89f765bc599 Mon Sep 17 00:00:00 2001 From: Nikita Date: Tue, 1 Dec 2015 17:52:53 +0300 Subject: [PATCH 2/3] shutdown check in ConnectionWatchdog.channelInactive added. #307 --- .../org/redisson/client/handler/ConnectionWatchdog.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/redisson/client/handler/ConnectionWatchdog.java b/src/main/java/org/redisson/client/handler/ConnectionWatchdog.java index 3fada1826..9fb766f9f 100644 --- a/src/main/java/org/redisson/client/handler/ConnectionWatchdog.java +++ b/src/main/java/org/redisson/client/handler/ConnectionWatchdog.java @@ -58,6 +58,10 @@ public class ConnectionWatchdog extends ChannelInboundHandlerAdapter { @Override public void channelInactive(ChannelHandlerContext ctx) throws Exception { + if (ctx.channel().eventLoop().parent().isShuttingDown()) { + return; + } + RedisConnection connection = RedisConnection.getFrom(ctx.channel()); if (!connection.isClosed()) { EventLoopGroup group = ctx.channel().eventLoop().parent(); @@ -112,8 +116,6 @@ public class ConnectionWatchdog extends ChannelInboundHandlerAdapter { } }, timeout, TimeUnit.MILLISECONDS); } - - }); } From 010a8fccae24817717bc7300e5fd25eb1b08f1e5 Mon Sep 17 00:00:00 2001 From: Nikita Date: Tue, 1 Dec 2015 18:01:06 +0300 Subject: [PATCH 3/3] isShuttingDown check fixed --- .../redisson/client/handler/ConnectionWatchdog.java | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/src/main/java/org/redisson/client/handler/ConnectionWatchdog.java b/src/main/java/org/redisson/client/handler/ConnectionWatchdog.java index 9fb766f9f..99179cac3 100644 --- a/src/main/java/org/redisson/client/handler/ConnectionWatchdog.java +++ b/src/main/java/org/redisson/client/handler/ConnectionWatchdog.java @@ -58,10 +58,6 @@ public class ConnectionWatchdog extends ChannelInboundHandlerAdapter { @Override public void channelInactive(ChannelHandlerContext ctx) throws Exception { - if (ctx.channel().eventLoop().parent().isShuttingDown()) { - return; - } - RedisConnection connection = RedisConnection.getFrom(ctx.channel()); if (!connection.isClosed()) { EventLoopGroup group = ctx.channel().eventLoop().parent(); @@ -80,16 +76,12 @@ public class ConnectionWatchdog extends ChannelInboundHandlerAdapter { } private void tryReconnect(final EventLoopGroup group, final RedisConnection connection, final int attempts) { - if (connection.isClosed()) { + if (connection.isClosed() || group.isShuttingDown()) { return; } log.debug("reconnecting {} to {} ", connection, connection.getRedisClient().getAddr(), connection); - if (bootstrap.group().isShuttingDown()) { - return; - } - bootstrap.connect().addListener(new ChannelFutureListener() { @Override