diff --git a/src/cluster.c b/src/cluster.c index 149faf0477a576502850633fef77b1d4bbb423ec..1ee5d689a9b39b936367adee991649500729f458 100644 --- a/src/cluster.c +++ b/src/cluster.c @@ -2312,6 +2312,17 @@ void clusterCron(void) { (REDIS_NODE_MYSELF|REDIS_NODE_NOADDR|REDIS_NODE_HANDSHAKE)) continue; + /* Orphaned master check, useful only if the current instance + * is a slave that may migrate to another master. */ + if (nodeIsSlave(myself) && nodeIsMaster(node) && !nodeFailed(node)) { + int okslaves = clusterCountNonFailingSlaves(node); + + if (okslaves == 0) orphaned_masters++; + if (okslaves > max_slaves) max_slaves = okslaves; + if (nodeIsSlave(myself) && myself->slaveof == node) + this_slaves = okslaves; + } + /* If we are waiting for the PONG more than half the cluster * timeout, reconnect the link: maybe there is a connection * issue even if the node is alive. */ @@ -2357,17 +2368,6 @@ void clusterCron(void) { update_state = 1; } } - - /* Orphaned master check, useful only if the current instance - * is a slave that may migrate to another master. */ - if (nodeIsSlave(myself) && nodeIsMaster(node) && !nodeFailed(node)) { - int okslaves = clusterCountNonFailingSlaves(node); - - if (okslaves == 0) orphaned_masters++; - if (okslaves > max_slaves) max_slaves = okslaves; - if (nodeIsSlave(myself) && myself->slaveof == node) - this_slaves = okslaves; - } } dictReleaseIterator(di);