提交 a2566d66 编写于 作者: A antirez

Cluster: don't gossip about nodes that are not useful to the cluster.

上级 bc922dc6
......@@ -1099,10 +1099,17 @@ void clusterSendPing(clusterLink *link, int type) {
clusterMsgDataGossip *gossip;
int j;
/* Not interesting to gossip about ourself.
* Nor to send gossip info about HANDSHAKE state nodes (zero info). */
/* In the gossip section don't include:
* 1) Myself.
* 2) Nodes in HANDSHAKE state.
* 3) Nodes with the NOADDR flag set.
* 4) Disconnected nodes if they don't have configured slots.
*/
if (this == server.cluster->myself ||
this->flags & REDIS_NODE_HANDSHAKE) {
this->flags & (REDIS_NODE_HANDSHAKE|REDIS_NODE_NOADDR) ||
(this->link == NULL &&
popcount(this->slots,sizeof(this->slots)) == 0))
{
freshnodes--; /* otherwise we may loop forever. */
continue;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册