瀏覽代碼

raft: reset votes when becomePreCandidate

gladiator 9 年之前
父節點
當前提交
3740793b42
共有 1 個文件被更改,包括 1 次插入0 次删除
  1. 1 0
      raft/raft.go

+ 1 - 0
raft/raft.go

@@ -611,6 +611,7 @@ func (r *raft) becomePreCandidate() {
 	// but doesn't change anything else. In particular it does not increase
 	// but doesn't change anything else. In particular it does not increase
 	// r.Term or change r.Vote.
 	// r.Term or change r.Vote.
 	r.step = stepCandidate
 	r.step = stepCandidate
+	r.votes = make(map[uint64]bool)
 	r.tick = r.tickElection
 	r.tick = r.tickElection
 	r.state = StatePreCandidate
 	r.state = StatePreCandidate
 	r.logger.Infof("%x became pre-candidate at term %d", r.id, r.Term)
 	r.logger.Infof("%x became pre-candidate at term %d", r.id, r.Term)