Commit 9da6caac authored by Pieter Noordhuis's avatar Pieter Noordhuis
Browse files

Don't reset the client when processCommand returns REDIS_ERR

parent dc11daf3
...@@ -820,9 +820,13 @@ void processInputBuffer(redisClient *c) { ...@@ -820,9 +820,13 @@ void processInputBuffer(redisClient *c) {
} }
/* Multibulk processing could see a <= 0 length. */ /* Multibulk processing could see a <= 0 length. */
if (c->argc > 0) if (c->argc == 0) {
processCommand(c); resetClient(c);
resetClient(c); } else {
/* Only reset the client when the command was executed. */
if (processCommand(c) == REDIS_OK)
resetClient(c);
}
} }
} }
......
...@@ -955,7 +955,7 @@ int processCommand(redisClient *c) { ...@@ -955,7 +955,7 @@ int processCommand(redisClient *c) {
addReply(c,shared.queued); addReply(c,shared.queued);
} else { } else {
if (server.vm_enabled && server.vm_max_threads > 0 && if (server.vm_enabled && server.vm_max_threads > 0 &&
blockClientOnSwappedKeys(c,cmd)) return 1; blockClientOnSwappedKeys(c,cmd)) return REDIS_ERR;
call(c,cmd); call(c,cmd);
} }
return REDIS_OK; return REDIS_OK;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment