Let BinaryJedis.multi() consumes "OK" message

* Transaction doesn't have to consume "multi"'s response
This commit is contained in:
Jungtaek Lim
2014-01-20 07:31:13 +09:00
parent f7bd9c8313
commit 5bf29b43ee
2 changed files with 2 additions and 4 deletions

View File

@@ -1679,6 +1679,7 @@ public class BinaryJedis implements BasicCommands, BinaryJedisCommands, MultiKey
public Transaction multi() {
client.multi();
client.getOne(); // expected OK
return new Transaction(client);
}
@@ -1687,6 +1688,7 @@ public class BinaryJedis implements BasicCommands, BinaryJedisCommands, MultiKey
jedisTransaction.setClient(client);
try {
client.multi();
client.getOne(); // expected OK
jedisTransaction.execute();
results = jedisTransaction.exec();
} catch (Exception ex) {

View File

@@ -44,8 +44,6 @@ public class Transaction extends MultiKeyPipelineBase {
}
public List<Object> exec() {
// Discard multi
consumeResponse(1);
// Discard QUEUED or ERROR
consumeResponse(getPipelinedResponseLength());
@@ -67,8 +65,6 @@ public class Transaction extends MultiKeyPipelineBase {
}
public List<Response<?>> execGetResponse() {
// Discard multi
consumeResponse(1);
// Discard QUEUED or ERROR
consumeResponse(getPipelinedResponseLength());