var scheduledCompactKeyName …
var finishedCompactKeyName …
var ErrCompacted …
var ErrFutureRev …
const markedRevBytesLen …
const markBytePosition …
const markTombstone …
var restoreChunkKeys …
var defaultCompactionBatchLimit …
var defaultCompactionSleepInterval …
type StoreConfig …
type store …
func NewStore(lg *zap.Logger, b backend.Backend, le lease.Lessor, cfg StoreConfig) *store { … }
func (s *store) compactBarrier(ctx context.Context, ch chan struct{ … }
func (s *store) hash() (hash uint32, revision int64, err error) { … }
func (s *store) hashByRev(rev int64) (hash KeyValueHash, currentRev int64, err error) { … }
func (s *store) updateCompactRev(rev int64) (<-chan struct{ … }
func (s *store) checkPrevCompactionCompleted() bool { … }
func (s *store) compact(trace *traceutil.Trace, rev, prevCompactRev int64, prevCompactionCompleted bool) <-chan struct{ … }
func (s *store) compactLockfree(rev int64) (<-chan struct{ … }
func (s *store) Compact(trace *traceutil.Trace, rev int64) (<-chan struct{ … }
func (s *store) Commit() { … }
func (s *store) Restore(b backend.Backend) error { … }
func (s *store) restore() error { … }
type revKeyValue …
func restoreIntoIndex(lg *zap.Logger, idx index) (chan<- revKeyValue, <-chan int64) { … }
func restoreChunk(lg *zap.Logger, kvc chan<- revKeyValue, keys, vals [][]byte, keyToLease map[string]lease.LeaseID) { … }
func (s *store) Close() error { … }
func (s *store) setupMetricsReporter() { … }
func appendMarkTombstone(lg *zap.Logger, b []byte) []byte { … }
func isTombstone(b []byte) bool { … }
func (s *store) HashStorage() HashStorage { … }