Expand description
Hummock state storeβs SST builder, format and iterator
Re-exports§
Modules§
- block π
- block_
iterator π - bloom π
- filter π
- utils π
- xor_
filter π
Structs§
- Iterates backwards on a sstable.
BlockBuilder
encodes and appends block to a buffer.BlockIterator
is used to read kv pairs in a block.KeyPrefix
contains info for prefix compression.- Assume that watermark1 is 5, watermark2 is 7, watermark3 is 11, delete ranges
{ [0, wmk1) in epoch1, [wmk1, wmk2) in epoch2, [wmk2, wmk3) in epoch3 }
can be transformed into events below:{ <0, +epoch1> <wmk1, -epoch1> <wmk1, +epoch2> <wmk2, -epoch2> <wmk2, +epoch3> <wmk3, -epoch3> }
Then we can get monotonic events (they are in order by user key) as below:{ <0, epoch1>, <wmk1, epoch2>, <wmk2, epoch3>, <wmk3, +inf> }
which means that delete range of [0, wmk1) is epoch1, delete range of [wmk1, wmk2) if epoch2, etc. In this example, at the event key wmk1 (5), delete range changes from epoch1 to epoch2, thus thenew epoch
is epoch2. epoch2 will be used from the event key wmk1 (5) and till the next event key wmk2 (7) (not inclusive). If there is no range deletes between current event key and next event key,new_epoch
will beHummockEpoch::MAX
. - Serde
Sstable π SharedComapctorObjectIdManager
is used to get output sst id for serverless compaction.Sstable
is a handle for accessing SST.- Iterates on a sstable.
- Caches SST object ids fetched from meta.
Enums§
Constants§
- MAGIC π
- OLD_
VERSION π - VERSION π