diff options
author | antirez <antirez@gmail.com> | 2015-03-20 16:56:44 +0100 |
---|---|---|
committer | antirez <antirez@gmail.com> | 2015-03-20 16:56:59 +0100 |
commit | 230d14142032bd054efceab21801068b5aa8a330 (patch) | |
tree | 80009c5deb743d53eb14bc631d1d6bb0bba071ca | |
parent | 4f2555aa17504b1f99a5f35a69302cc425b30d74 (diff) | |
download | redis-230d14142032bd054efceab21801068b5aa8a330.tar.gz |
Cluster: separate unknown master check from the rest.
In no case we should try to attempt to failover if myself->slaveof is
NULL.
-rw-r--r-- | src/cluster.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/cluster.c b/src/cluster.c index 4ff8fb4d6..74468cfae 100644 --- a/src/cluster.c +++ b/src/cluster.c @@ -4176,9 +4176,12 @@ void clusterCommand(redisClient *c) { if (nodeIsMaster(myself)) { addReplyError(c,"You should send CLUSTER FAILOVER to a slave"); return; + } else if (myself->slaveof == NULL) { + addReplyError(c,"I'm a slave but my master is unknown to me"); + return; } else if (!force && - (myself->slaveof == NULL || nodeFailed(myself->slaveof) || - myself->slaveof->link == NULL)) + (nodeFailed(myself->slaveof) || + myself->slaveof->link == NULL)) { addReplyError(c,"Master is down or failed, " "please use CLUSTER FAILOVER FORCE"); |