From 7eedfd2059b2c223d05678aeda675f7ff6d2b511 Mon Sep 17 00:00:00 2001 From: Jitendra Bhurat Date: Fri, 15 Mar 2019 11:36:41 -0400 Subject: [PATCH] Adding a node only if it is not in the raft peer list --- raft/handler.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/raft/handler.go b/raft/handler.go index 8ed6470f5..83ebb3327 100755 --- a/raft/handler.go +++ b/raft/handler.go @@ -754,7 +754,7 @@ func (pm *ProtocolManager) eventLoop() { case raftpb.ConfChangeAddNode: if pm.isRaftIdRemoved(raftId) { log.Info("ignoring ConfChangeAddNode for permanently-removed peer", "raft id", raftId) - } else if raftId <= uint16(len(pm.bootstrapNodes)) { + } else if peer := pm.peers[raftId]; peer != nil && raftId <= uint16(len(pm.bootstrapNodes)) { // See initial cluster logic in startRaft() for more information. log.Info("ignoring expected ConfChangeAddNode for initial peer", "raft id", raftId)