diff --git a/redisson/src/main/java/org/redisson/command/CommandAsyncService.java b/redisson/src/main/java/org/redisson/command/CommandAsyncService.java index 9fc9eb69d..a89956c08 100644 --- a/redisson/src/main/java/org/redisson/command/CommandAsyncService.java +++ b/redisson/src/main/java/org/redisson/command/CommandAsyncService.java @@ -726,10 +726,10 @@ public class CommandAsyncService implements CommandAsyncExecutor { public void run(Timeout timeout) throws Exception { // re-connection hasn't been made // and connection is still active - if (orignalChannel == connection.getChannel() - && connection.isActive()) { - return; - } +// if (orignalChannel == connection.getChannel() +// && connection.isActive()) { +// return; +// } if (details.getAttemptPromise().trySuccess(null)) { connection.forceFastReconnectAsync(); diff --git a/redisson/src/test/java/org/redisson/RedissonBlockingDequeTest.java b/redisson/src/test/java/org/redisson/RedissonBlockingDequeTest.java index 0b12a1311..aa57a684f 100644 --- a/redisson/src/test/java/org/redisson/RedissonBlockingDequeTest.java +++ b/redisson/src/test/java/org/redisson/RedissonBlockingDequeTest.java @@ -11,6 +11,15 @@ import org.redisson.api.RBlockingDeque; public class RedissonBlockingDequeTest extends BaseTest { + @Test + public void testPollLastAndOfferFirstTo() throws InterruptedException { + RBlockingDeque blockingDeque = redisson.getBlockingDeque("blocking_deque"); + long start = System.currentTimeMillis(); + String redisTask = blockingDeque.pollLastAndOfferFirstTo("deque", 1, TimeUnit.SECONDS); + assertThat(System.currentTimeMillis() - start).isBetween(950L, 1050L); + assertThat(redisTask).isNull(); + } + @Test(timeout = 3000) public void testShortPoll() throws InterruptedException { RBlockingDeque queue = redisson.getBlockingDeque("queue:pollany"); diff --git a/redisson/src/test/java/org/redisson/RedissonBlockingQueueTest.java b/redisson/src/test/java/org/redisson/RedissonBlockingQueueTest.java index aeba7cefc..2743521b0 100644 --- a/redisson/src/test/java/org/redisson/RedissonBlockingQueueTest.java +++ b/redisson/src/test/java/org/redisson/RedissonBlockingQueueTest.java @@ -38,7 +38,7 @@ public class RedissonBlockingQueueTest extends RedissonQueueTest { return redisson.getBlockingQueue("queue"); } -// @Test + @Test public void testPollWithBrokenConnection() throws IOException, InterruptedException, ExecutionException { RedisProcess runner = new RedisRunner() .nosave()