From c882694b94a158b59e066ad0ff021dc07fa52aca Mon Sep 17 00:00:00 2001 From: Nikita Date: Tue, 2 Aug 2016 10:56:05 +0300 Subject: [PATCH] BLPOP response timeout calculation fixed. #565 --- src/main/java/org/redisson/command/CommandAsyncService.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/main/java/org/redisson/command/CommandAsyncService.java b/src/main/java/org/redisson/command/CommandAsyncService.java index 0f73d4d63..aa4a4eee6 100644 --- a/src/main/java/org/redisson/command/CommandAsyncService.java +++ b/src/main/java/org/redisson/command/CommandAsyncService.java @@ -511,6 +511,9 @@ public class CommandAsyncService implements CommandAsyncExecutor { int timeoutTime = connectionManager.getConfig().getTimeout(); if (QueueCommand.TIMEOUTLESS_COMMANDS.contains(details.getCommand().getName())) { + // add 1.5 second due to issue https://github.com/antirez/redis/issues/874 + timeoutTime += Math.max(0, 1500 - timeoutTime); + Integer popTimeout = Integer.valueOf(details.getParams()[details.getParams().length - 1].toString()); handleBlockingOperations(details, connection, popTimeout); if (popTimeout == 0) {