pub struct LsmStorageState {
pub memtable: Arc<MemTable>,
pub imm_memtables: Vec<Arc<MemTable>>,
pub l0_sstables: Vec<usize>,
pub levels: Vec<(usize, Vec<usize>)>,
pub sstables: HashMap<usize, Arc<SsTable>>,
}Expand description
Represents the state of the storage engine.
Fields§
§memtable: Arc<MemTable>The current memtable.
imm_memtables: Vec<Arc<MemTable>>Immutable memtables, from latest to earliest.
l0_sstables: Vec<usize>L0 SSTs, from latest to earliest.
levels: Vec<(usize, Vec<usize>)>SsTables sorted by key range; L1 - L_max for leveled compaction, or tiers for tiered compaction.
sstables: HashMap<usize, Arc<SsTable>>SST objects.
Trait Implementations§
Source§impl Clone for LsmStorageState
impl Clone for LsmStorageState
Source§fn clone(&self) -> LsmStorageState
fn clone(&self) -> LsmStorageState
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for LsmStorageState
impl !RefUnwindSafe for LsmStorageState
impl Send for LsmStorageState
impl Sync for LsmStorageState
impl Unpin for LsmStorageState
impl !UnwindSafe for LsmStorageState
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more