diff --git a/server/storage/mvcc/hash.go b/server/storage/mvcc/hash.go index 1adc7a719..db7140edd 100644 --- a/server/storage/mvcc/hash.go +++ b/server/storage/mvcc/hash.go @@ -42,8 +42,8 @@ func newKVHasher(lower, upper int64, keep map[revision]struct{}) kvHasher { h.Write(schema.Key.Name()) return kvHasher{ hash: h, - lower: revision{main: lower}, - upper: revision{main: upper}, + lower: revision{main: lower + 1}, + upper: revision{main: upper + 1}, keep: keep, } } diff --git a/server/storage/mvcc/kvstore.go b/server/storage/mvcc/kvstore.go index 93d69a26b..c001b1845 100644 --- a/server/storage/mvcc/kvstore.go +++ b/server/storage/mvcc/kvstore.go @@ -191,7 +191,7 @@ func (s *store) HashByRev(rev int64) (hash uint32, currentRev int64, compactRev tx.RLock() defer tx.RUnlock() s.mu.RUnlock() - hash, err = unsafeHashByRev(tx, compactRev+1, rev+1, keep) + hash, err = unsafeHashByRev(tx, compactRev, rev, keep) hashRevSec.Observe(time.Since(start).Seconds()) return hash, currentRev, compactRev, err } diff --git a/server/storage/mvcc/kvstore_compaction.go b/server/storage/mvcc/kvstore_compaction.go index 0cfe6fe25..5f93e258e 100644 --- a/server/storage/mvcc/kvstore_compaction.go +++ b/server/storage/mvcc/kvstore_compaction.go @@ -39,7 +39,7 @@ func (s *store) scheduleCompaction(compactMainRev, prevCompactRev int64) (uint32 batchNum := s.cfg.CompactionBatchLimit batchInterval := s.cfg.CompactionSleepInterval - h := newKVHasher(prevCompactRev+1, compactMainRev+1, keep) + h := newKVHasher(prevCompactRev, compactMainRev, keep) last := make([]byte, 8+1+8) for { var rev revision