Structs§
- Block
Cache Lifecycle - Lifecycle hooks for the block cache that prevent eviction of entries
still referenced outside the cache (i.e., with
Arcstrong count > 1). - Block
Weighter - Fixed
Regions - Where the two regions of a fixed-size key block sit, computed once per block.
- Static
Sorted File - An SST file accessed through mmap or positional file reads.
- Static
Sorted File Iter - An iterator over all entries in a SST file in sorted order.
- Static
Sorted File Meta Data
Enums§
- KeyBlock
Layout - Whether a key block stores a hash per entry, and therefore what order its entries are in.
- SstLookup
Result - The result of a lookup operation.
Constants§
- BLOCK_
TYPE_ FIXED_ KEY_ NO_ HASH - The block header for a fixed-size key block without hash. Entries are ordered by key.
- BLOCK_
TYPE_ FIXED_ KEY_ WITH_ HASH - The block header for a fixed-size key block with 8-byte hash per entry.
- BLOCK_
TYPE_ INDEX - The block header for an index block.
- BLOCK_
TYPE_ KEY_ NO_ HASH - The block header for a key block without hash. Entries are ordered by key.
- BLOCK_
TYPE_ KEY_ WITH_ HASH - The block header for a key block with 8-byte hash per entry.
- FIXED_
KEY_ BLOCK_ MIXED_ VALUE_ TYPE - Written in a fixed-size key block header’s value type field when entries share a value size but not a value type. Each entry then carries its own type byte ahead of its value.
- KEY_
BLOCK_ ENTRY_ TYPE_ BLOB - The tag for the blob value.
- KEY_
BLOCK_ ENTRY_ TYPE_ INLINE_ MIN - The minimum tag for inline values. The actual size is (tag - INLINE_MIN).
- KEY_
BLOCK_ ENTRY_ TYPE_ KEY_ DELETED - The tag for the deleted value. This is a key tombstone: it deletes every value for the key.
- KEY_
BLOCK_ ENTRY_ TYPE_ KEY_ VALUE_ DELETED_ MIN - The minimum tag for a key-value tombstone, which deletes only the one value it carries and
leaves other values for the same key intact. Only meaningful for
FamilyKind::MultiValuefamilies. - KEY_
BLOCK_ ENTRY_ TYPE_ MEDIUM - The tag for a medium-sized value.
- KEY_
BLOCK_ ENTRY_ TYPE_ SMALL - The tag for a small-sized value.
- KEY_
BLOCK_ TABLE_ ENTRY_ SIZE_ NO_ HASH - Size of one variable-size key block offset table entry when the block stores no hash: 1 byte entry type packed into the top of a 3-byte in-block position.
- KEY_
BLOCK_ TABLE_ ENTRY_ SIZE_ WITH_ HASH - Size of one variable-size key block offset table entry when the block stores a hash: the key’s 8-byte hash followed by the type/position word.
Functions§
- key_
block_ table_ stride - Bytes per offset table entry for a variable-size key block with the given hash length.