Kaynağa Gözat

raft: memory storage does not append out of date entries

Xiang Li 11 yıl önce
ebeveyn
işleme
9bd1786fe4
1 değiştirilmiş dosya ile 4 ekleme ve 0 silme
  1. 4 0
      raft/storage.go

+ 4 - 0
raft/storage.go

@@ -182,6 +182,10 @@ func (ms *MemoryStorage) Append(entries []pb.Entry) {
 		return
 		return
 	}
 	}
 	offset := entries[0].Index - ms.snapshot.Metadata.Index
 	offset := entries[0].Index - ms.snapshot.Metadata.Index
+	// do not append out of date entries
+	if offset < 0 {
+		return
+	}
 	if uint64(len(ms.ents)) >= offset {
 	if uint64(len(ms.ents)) >= offset {
 		ms.ents = ms.ents[:offset]
 		ms.ents = ms.ents[:offset]
 	}
 	}