mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
raft: remove setX methods
This commit is contained in:
parent
5deaada0dc
commit
72c65e74f5
@ -272,9 +272,9 @@ func (r *raft) nextEnts() (ents []Entry) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (r *raft) reset(term int64) {
|
func (r *raft) reset(term int64) {
|
||||||
r.setTerm(term)
|
r.Term = term
|
||||||
r.lead.Set(none)
|
r.lead.Set(none)
|
||||||
r.setVote(none)
|
r.Vote = none
|
||||||
r.votes = make(map[int64]bool)
|
r.votes = make(map[int64]bool)
|
||||||
for i := range r.prs {
|
for i := range r.prs {
|
||||||
r.prs[i] = &progress{next: r.raftLog.lastIndex() + 1}
|
r.prs[i] = &progress{next: r.raftLog.lastIndex() + 1}
|
||||||
@ -309,7 +309,7 @@ func (r *raft) becomeCandidate() {
|
|||||||
panic("invalid transition [leader -> candidate]")
|
panic("invalid transition [leader -> candidate]")
|
||||||
}
|
}
|
||||||
r.reset(r.Term + 1)
|
r.reset(r.Term + 1)
|
||||||
r.setVote(r.id)
|
r.Vote = r.id
|
||||||
r.state = stateCandidate
|
r.state = stateCandidate
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -476,7 +476,7 @@ func stepFollower(r *raft, m Message) {
|
|||||||
r.handleSnapshot(m)
|
r.handleSnapshot(m)
|
||||||
case msgVote:
|
case msgVote:
|
||||||
if (r.Vote == none || r.Vote == m.From) && r.raftLog.isUpToDate(m.Index, m.LogTerm) {
|
if (r.Vote == none || r.Vote == m.From) && r.raftLog.isUpToDate(m.Index, m.LogTerm) {
|
||||||
r.setVote(m.From)
|
r.Vote = m.From
|
||||||
r.send(Message{To: m.From, Type: msgVoteResp, Index: r.raftLog.lastIndex()})
|
r.send(Message{To: m.From, Type: msgVoteResp, Index: r.raftLog.lastIndex()})
|
||||||
} else {
|
} else {
|
||||||
r.send(Message{To: m.From, Type: msgVoteResp, Index: -1})
|
r.send(Message{To: m.From, Type: msgVoteResp, Index: -1})
|
||||||
@ -528,37 +528,12 @@ func (r *raft) nodes() []int64 {
|
|||||||
return nodes
|
return nodes
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r *raft) setTerm(term int64) {
|
|
||||||
r.Term = term
|
|
||||||
r.saveState()
|
|
||||||
}
|
|
||||||
|
|
||||||
func (r *raft) setVote(vote int64) {
|
|
||||||
r.Vote = vote
|
|
||||||
r.saveState()
|
|
||||||
}
|
|
||||||
|
|
||||||
func (r *raft) addIns(id, match, next int64) {
|
func (r *raft) addIns(id, match, next int64) {
|
||||||
r.prs[id] = &progress{next: next, match: match}
|
r.prs[id] = &progress{next: next, match: match}
|
||||||
r.saveState()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r *raft) deleteIns(id int64) {
|
func (r *raft) deleteIns(id int64) {
|
||||||
delete(r.prs, id)
|
delete(r.prs, id)
|
||||||
r.saveState()
|
|
||||||
}
|
|
||||||
|
|
||||||
// saveState saves the state to r.State
|
|
||||||
// When there is a term change, vote change or configuration change, raft
|
|
||||||
// must call saveState.
|
|
||||||
func (r *raft) saveState() {
|
|
||||||
r.setState(r.Vote, r.Term, r.raftLog.committed)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (r *raft) setState(vote, term, commit int64) {
|
|
||||||
r.Vote = vote
|
|
||||||
r.Term = term
|
|
||||||
r.Commit = commit
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r *raft) loadEnts(ents []Entry) {
|
func (r *raft) loadEnts(ents []Entry) {
|
||||||
@ -571,8 +546,8 @@ func (r *raft) loadEnts(ents []Entry) {
|
|||||||
|
|
||||||
func (r *raft) loadState(state State) {
|
func (r *raft) loadState(state State) {
|
||||||
r.raftLog.committed = state.Commit
|
r.raftLog.committed = state.Commit
|
||||||
r.setTerm(state.Term)
|
r.Term = state.Term
|
||||||
r.setVote(state.Vote)
|
r.Vote = state.Vote
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *State) IsEmpty() bool {
|
func (s *State) IsEmpty() bool {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user