mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
raft: isStateEqual -> isHardStateEqual, IsEmptyState -> IsEmptyHardState
This commit is contained in:
parent
023dc7cba2
commit
de21c39ca5
@ -19,7 +19,7 @@ func Example_Node() {
|
||||
for {
|
||||
// ReadState blocks until there is new state ready.
|
||||
rd := <-n.Ready()
|
||||
if !isStateEqual(prev, rd.HardState) {
|
||||
if !isHardStateEqual(prev, rd.HardState) {
|
||||
saveStateToDisk(rd.HardState)
|
||||
prev = rd.HardState
|
||||
}
|
||||
|
12
raft/node.go
12
raft/node.go
@ -52,16 +52,16 @@ type Ready struct {
|
||||
Messages []pb.Message
|
||||
}
|
||||
|
||||
func isStateEqual(a, b pb.HardState) bool {
|
||||
func isHardStateEqual(a, b pb.HardState) bool {
|
||||
return a.Term == b.Term && a.Vote == b.Vote && a.Commit == b.Commit
|
||||
}
|
||||
|
||||
func IsEmptyState(st pb.HardState) bool {
|
||||
return isStateEqual(st, emptyState)
|
||||
func IsEmptyHardState(st pb.HardState) bool {
|
||||
return isHardStateEqual(st, emptyState)
|
||||
}
|
||||
|
||||
func (rd Ready) containsUpdates() bool {
|
||||
return rd.SoftState != nil || !IsEmptyState(rd.HardState) || len(rd.Entries) > 0 || len(rd.CommittedEntries) > 0 || len(rd.Messages) > 0
|
||||
return rd.SoftState != nil || !IsEmptyHardState(rd.HardState) || len(rd.Entries) > 0 || len(rd.CommittedEntries) > 0 || len(rd.Messages) > 0
|
||||
}
|
||||
|
||||
type Node struct {
|
||||
@ -145,7 +145,7 @@ func (n *Node) run(r *raft) {
|
||||
if rd.SoftState != nil {
|
||||
prevSoftSt = rd.SoftState
|
||||
}
|
||||
if !IsEmptyState(rd.HardState) {
|
||||
if !IsEmptyHardState(rd.HardState) {
|
||||
prevHardSt = rd.HardState
|
||||
}
|
||||
r.raftLog.resetNextEnts()
|
||||
@ -207,7 +207,7 @@ func newReady(r *raft, prevSoftSt *SoftState, prevHardSt pb.HardState) Ready {
|
||||
if softSt := r.softState(); !softSt.equal(prevSoftSt) {
|
||||
rd.SoftState = softSt
|
||||
}
|
||||
if !isStateEqual(r.HardState, prevHardSt) {
|
||||
if !isHardStateEqual(r.HardState, prevHardSt) {
|
||||
rd.HardState = r.HardState
|
||||
}
|
||||
return rd
|
||||
|
@ -209,8 +209,8 @@ func TestIsStateEqual(t *testing.T) {
|
||||
}
|
||||
|
||||
for i, tt := range tests {
|
||||
if isStateEqual(tt.st, emptyState) != tt.we {
|
||||
t.Errorf("#%d, equal = %v, want %v", i, isStateEqual(tt.st, emptyState), tt.we)
|
||||
if isHardStateEqual(tt.st, emptyState) != tt.we {
|
||||
t.Errorf("#%d, equal = %v, want %v", i, isHardStateEqual(tt.st, emptyState), tt.we)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -265,7 +265,7 @@ func (w *WAL) SaveEntry(e *raftpb.Entry) error {
|
||||
}
|
||||
|
||||
func (w *WAL) SaveState(s *raftpb.HardState) error {
|
||||
if raft.IsEmptyState(*s) {
|
||||
if raft.IsEmptyHardState(*s) {
|
||||
return nil
|
||||
}
|
||||
log.Printf("path=%s wal.saveState state=\"%+v\"", w.f.Name(), s)
|
||||
|
Loading…
x
Reference in New Issue
Block a user