Merge pull request #4967 from JingchengLi/unstable

fix repeat argument issue and reduce unnessary loop times for redis-cli.
This commit is contained in:
Salvatore Sanfilippo 2018-07-10 15:13:20 +02:00 committed by GitHub
commit f45e790125
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1174,6 +1174,16 @@ static int cliSendCommand(int argc, char **argv, long repeat) {
} else if (!strcasecmp(command,"auth") && argc == 2) {
cliSelect();
}
/* Issue the command again if we got redirected in cluster mode */
if (config.cluster_mode && config.cluster_reissue_command) {
cliConnect(CC_FORCE);
config.cluster_reissue_command = 0;
/* for a '-MOVED' or '-ASK' response, we need to issue the command again, so
* add repeat by 1. */
repeat++;
}
}
if (config.interval) usleep(config.interval);
fflush(stdout); /* Make it grep friendly */
@ -1543,14 +1553,9 @@ static int issueCommandRepeat(int argc, char **argv, long repeat) {
cliPrintContextError();
return REDIS_ERR;
}
}
/* Issue the command again if we got redirected in cluster mode */
if (config.cluster_mode && config.cluster_reissue_command) {
cliConnect(CC_FORCE);
} else {
} else
break;
}
}
return REDIS_OK;
}