Browse Source

raft: move good case of truncateAndAppend to the first place

Xiang Li 11 years ago
parent
commit
b7ca56e3c8
1 changed files with 4 additions and 4 deletions
  1. 4 4
      raft/log_unstable.go

+ 4 - 4
raft/log_unstable.go

@@ -105,16 +105,16 @@ func (u *unstable) restore(s pb.Snapshot) {
 
 func (u *unstable) truncateAndAppend(after uint64, ents []pb.Entry) {
 	switch {
+	case after == u.offset+uint64(len(u.entries))-1:
+		// after is the last index in the u.entries
+		// directly append
+		u.entries = append(u.entries, ents...)
 	case after < u.offset:
 		log.Printf("raftlog: replace the unstable entries from index %d", after+1)
 		// The log is being truncated to before our current offset
 		// portion, so set the offset and replace the entries
 		u.offset = after + 1
 		u.entries = ents
-	case after == u.offset+uint64(len(u.entries))-1:
-		// after is the last index in the u.entries
-		// directly append
-		u.entries = append(u.entries, ents...)
 	default:
 		// truncate to after and copy to u.entries
 		// then append