package lsm // import "github.com/rodrigo0345/omag/internal/storage/lsm"

const SSTableMaxSize = 65536 var ErrKeyTombstoned = errors.New("key has been tombstoned (deleted)") type BloomFilter struct{ ... } func NewBloomFilter(expectedItems uint, falsePositiveRate float64) BloomFilter type BloomFilterAllocator struct{ ... } func NewBloomFilterAllocator(t float64, c float64, memBudgetBytes uint, numLevels int) BloomFilterAllocator type CompactionPolicy interface{ ... } type Entry struct{ ... } type GarneringCompactionPolicy struct{ ... } func NewGarneringCompactionPolicy(t, c float64, l0Cap int) GarneringCompactionPolicy type LSMTreeBackend struct{ ... } func NewLSMTreeBackend(log log.ILogManager, buf buffer.IBufferPoolManager) LSMTreeBackend type MemTable struct{ ... } func NewMemTable() MemTable type SSTable struct{ ... } func FlushMemTable(id uint64, m MemTable, falsePositiveRate float64) SSTable func FlushMemTableFromMap(id uint64, data map[string][]byte, tombstones map[string]bool, ...) SSTable func NewSSTable(id uint64, data map[string][]byte, bf BloomFilter) SSTable type Tombstone struct{ ... }