diff --git a/src/main/java/redis/clients/jedis/BinaryJedis.java b/src/main/java/redis/clients/jedis/BinaryJedis.java index 4401042..501f211 100644 --- a/src/main/java/redis/clients/jedis/BinaryJedis.java +++ b/src/main/java/redis/clients/jedis/BinaryJedis.java @@ -2898,7 +2898,10 @@ public class BinaryJedis implements BinaryJedisCommands { */ public byte[] brpoplpush(byte[] source, byte[] destination, int timeout) { client.brpoplpush(source, destination, timeout); - return client.getBinaryBulkReply(); + client.setTimeoutInfinite(); + byte[] reply = client.getBinaryBulkReply(); + client.rollbackTimeout(); + return reply; } /** diff --git a/src/main/java/redis/clients/jedis/Jedis.java b/src/main/java/redis/clients/jedis/Jedis.java index c311857..c83bb95 100644 --- a/src/main/java/redis/clients/jedis/Jedis.java +++ b/src/main/java/redis/clients/jedis/Jedis.java @@ -2570,7 +2570,10 @@ public class Jedis extends BinaryJedis implements JedisCommands { */ public String brpoplpush(String source, String destination, int timeout) { client.brpoplpush(source, destination, timeout); - return client.getBulkReply(); + client.setTimeoutInfinite(); + String reply = client.getBulkReply(); + client.rollbackTimeout(); + return reply; } /** diff --git a/src/test/java/redis/clients/jedis/tests/commands/ListCommandsTest.java b/src/test/java/redis/clients/jedis/tests/commands/ListCommandsTest.java index 8b082c3..a2e5a4b 100644 --- a/src/test/java/redis/clients/jedis/tests/commands/ListCommandsTest.java +++ b/src/test/java/redis/clients/jedis/tests/commands/ListCommandsTest.java @@ -585,7 +585,7 @@ public class ListCommandsTest extends JedisCommandTestBase { (new Thread(new Runnable() { public void run() { try { - Thread.sleep(100); + Thread.sleep(2000); Jedis j = createJedis(); j.lpush("foo", "a"); } catch (InterruptedException e) {