Merge branch 'master' into nested-multi

This commit is contained in:
antirez 2010-05-26 17:55:28 +02:00
commit 90fdc82697

View File

@ -7563,6 +7563,7 @@ static void execCommand(redisClient *c) {
execCommandReplicateMulti(c); execCommandReplicateMulti(c);
/* Exec all the queued commands */ /* Exec all the queued commands */
unwatchAllKeys(c); /* Unwatch ASAP otherwise we'll waste CPU cycles */
orig_argv = c->argv; orig_argv = c->argv;
orig_argc = c->argc; orig_argc = c->argc;
addReplySds(c,sdscatprintf(sdsempty(),"*%d\r\n",c->mstate.count)); addReplySds(c,sdscatprintf(sdsempty(),"*%d\r\n",c->mstate.count));
@ -7575,8 +7576,7 @@ static void execCommand(redisClient *c) {
c->argc = orig_argc; c->argc = orig_argc;
freeClientMultiState(c); freeClientMultiState(c);
initClientMultiState(c); initClientMultiState(c);
c->flags &= (~REDIS_MULTI); c->flags &= ~(REDIS_MULTI|REDIS_DIRTY_CAS);
unwatchAllKeys(c);
/* Make sure the EXEC command is always replicated / AOF, since we /* Make sure the EXEC command is always replicated / AOF, since we
* always send the MULTI command (we can't know beforehand if the * always send the MULTI command (we can't know beforehand if the
* next operations will contain at least a modification to the DB). */ * next operations will contain at least a modification to the DB). */