redis-cli: Do not use hostsocket when we got redirected in cluster mode (#8870)

When redis-cli was used with both -c (cluster) and -s (unix socket),
it would have kept trying to use that unix socket, even if it got
redirected by the cluster (resulting in an infinite loop).

(cherry picked from commit 416f277339)
This commit is contained in:
Binbin
2021-05-03 22:57:00 +03:00
committed by Oran Agra
parent 4f2da00e94
commit d30ee6c44a
+3 -1
View File
@@ -844,7 +844,9 @@ static int cliConnect(int flags) {
cliRefreshPrompt();
}
if (config.hostsocket == NULL) {
/* Do not use hostsocket when we got redirected in cluster mode */
if (config.hostsocket == NULL ||
(config.cluster_mode && config.cluster_reissue_command)) {
context = redisConnect(config.hostip,config.hostport);
} else {
context = redisConnectUnix(config.hostsocket);