Cluster: FAIL messages from unknown senders are handled better.

Previously the event was not logged but instead the node reported an
unknown packet type received.
This commit is contained in:
antirez 2013-10-02 09:42:35 +02:00
parent 7970ebd80a
commit abe81781ae

View File

@ -1154,9 +1154,10 @@ int clusterProcessPacket(clusterLink *link) {
/* Update the cluster state if needed */
if (update_state) clusterUpdateState();
if (update_config) clusterSaveConfigOrDie();
} else if (type == CLUSTERMSG_TYPE_FAIL && sender) {
} else if (type == CLUSTERMSG_TYPE_FAIL) {
clusterNode *failing;
if (sender) {
failing = clusterLookupNode(hdr->data.fail.about.nodename);
if (failing && !(failing->flags & (REDIS_NODE_FAIL|REDIS_NODE_MYSELF)))
{
@ -1169,6 +1170,11 @@ int clusterProcessPacket(clusterLink *link) {
clusterUpdateState();
clusterSaveConfigOrDie();
}
} else {
redisLog(REDIS_NOTICE,
"Ignoring FAIL message from unknonw node %.40s about %.40s",
hdr->sender, hdr->data.fail.about.nodename);
}
} else if (type == CLUSTERMSG_TYPE_PUBLISH) {
robj *channel, *message;
uint32_t channel_len, message_len;