raft: remove index field in msg voteResp

This commit is contained in:
Xiang Li 2014-09-28 19:34:15 -07:00
parent 86473d8a27
commit adefd83855
2 changed files with 28 additions and 28 deletions

View File

@ -430,7 +430,7 @@ func stepLeader(r *raft, m pb.Message) {
}
}
case msgVote:
r.send(pb.Message{To: m.From, Type: msgVoteResp, Index: -1, Denied: true})
r.send(pb.Message{To: m.From, Type: msgVoteResp, Denied: true})
}
}
@ -445,7 +445,7 @@ func stepCandidate(r *raft, m pb.Message) {
r.becomeFollower(m.Term, m.From)
r.handleSnapshot(m)
case msgVote:
r.send(pb.Message{To: m.From, Type: msgVoteResp, Index: -1, Denied: true})
r.send(pb.Message{To: m.From, Type: msgVoteResp, Denied: true})
case msgVoteResp:
gr := r.poll(m.From, !m.Denied)
switch r.q() {
@ -477,9 +477,9 @@ func stepFollower(r *raft, m pb.Message) {
if (r.Vote == None || r.Vote == m.From) && r.raftLog.isUpToDate(m.Index, m.LogTerm) {
r.elapsed = 0
r.Vote = m.From
r.send(pb.Message{To: m.From, Type: msgVoteResp, Index: r.raftLog.lastIndex()})
r.send(pb.Message{To: m.From, Type: msgVoteResp})
} else {
r.send(pb.Message{To: m.From, Type: msgVoteResp, Index: -1, Denied: true})
r.send(pb.Message{To: m.From, Type: msgVoteResp, Denied: true})
}
}
}

View File

@ -535,33 +535,33 @@ func TestRecvMsgVote(t *testing.T) {
state StateType
i, term int64
voteFor int64
w int64
wdenied bool
}{
{StateFollower, 0, 0, None, -1},
{StateFollower, 0, 1, None, -1},
{StateFollower, 0, 2, None, -1},
{StateFollower, 0, 3, None, 2},
{StateFollower, 0, 0, None, true},
{StateFollower, 0, 1, None, true},
{StateFollower, 0, 2, None, true},
{StateFollower, 0, 3, None, false},
{StateFollower, 1, 0, None, -1},
{StateFollower, 1, 1, None, -1},
{StateFollower, 1, 2, None, -1},
{StateFollower, 1, 3, None, 2},
{StateFollower, 1, 0, None, true},
{StateFollower, 1, 1, None, true},
{StateFollower, 1, 2, None, true},
{StateFollower, 1, 3, None, false},
{StateFollower, 2, 0, None, -1},
{StateFollower, 2, 1, None, -1},
{StateFollower, 2, 2, None, 2},
{StateFollower, 2, 3, None, 2},
{StateFollower, 2, 0, None, true},
{StateFollower, 2, 1, None, true},
{StateFollower, 2, 2, None, false},
{StateFollower, 2, 3, None, false},
{StateFollower, 3, 0, None, -1},
{StateFollower, 3, 1, None, -1},
{StateFollower, 3, 2, None, 2},
{StateFollower, 3, 3, None, 2},
{StateFollower, 3, 0, None, true},
{StateFollower, 3, 1, None, true},
{StateFollower, 3, 2, None, false},
{StateFollower, 3, 3, None, false},
{StateFollower, 3, 2, 2, 2},
{StateFollower, 3, 2, 1, -1},
{StateFollower, 3, 2, 2, false},
{StateFollower, 3, 2, 1, true},
{StateLeader, 3, 3, 1, -1},
{StateCandidate, 3, 3, 1, -1},
{StateLeader, 3, 3, 1, true},
{StateCandidate, 3, 3, 1, true},
}
for i, tt := range tests {
@ -582,11 +582,11 @@ func TestRecvMsgVote(t *testing.T) {
msgs := sm.ReadMessages()
if g := len(msgs); g != 1 {
t.Errorf("#%d: len(msgs) = %d, want 1", i, g)
t.Fatalf("#%d: len(msgs) = %d, want 1", i, g)
continue
}
if g := msgs[0].Index; g != tt.w {
t.Errorf("#%d, m.Index = %d, want %d", i, g, tt.w)
if g := msgs[0].Denied; g != tt.wdenied {
t.Errorf("#%d, m.Index = %d, want %d", i, g, tt.wdenied)
}
}
}