]> git.saurik.com Git - redis.git/commitdiff
Allow AUTH when Redis is busy because of timedout Lua script.
authorantirez <antirez@gmail.com>
Thu, 11 Oct 2012 16:34:05 +0000 (18:34 +0200)
committerantirez <antirez@gmail.com>
Thu, 11 Oct 2012 16:34:05 +0000 (18:34 +0200)
If the server is password protected we need to accept AUTH when there is
a server busy (-BUSY) condition, otherwise it will be impossible to send
SHUTDOWN NOSAVE or SCRIPT KILL.

This fixes issue #708.

src/redis.c

index 024403fd22aee488eb132dc5658efdad967b3746..784d56e4873cd1935617c802dc21e37fbacf3239 100644 (file)
@@ -1667,6 +1667,7 @@ int processCommand(redisClient *c) {
 
     /* Lua script too slow? Only allow commands with REDIS_CMD_STALE flag. */
     if (server.lua_timedout &&
 
     /* Lua script too slow? Only allow commands with REDIS_CMD_STALE flag. */
     if (server.lua_timedout &&
+          c->cmd->proc != authCommand &&
         !(c->cmd->proc == shutdownCommand &&
           c->argc == 2 &&
           tolower(((char*)c->argv[1]->ptr)[0]) == 'n') &&
         !(c->cmd->proc == shutdownCommand &&
           c->argc == 2 &&
           tolower(((char*)c->argv[1]->ptr)[0]) == 'n') &&