pub type HummockVersion = HummockVersionCommon<SstableInfo>;
Aliased Type§
struct HummockVersion {
pub id: HummockVersionId,
pub levels: HashMap<u64, LevelsCommon<SstableInfo>>,
pub(crate) max_committed_epoch: u64,
pub table_watermarks: HashMap<TableId, Arc<TableWatermarks>>,
pub table_change_log: HashMap<TableId, TableChangeLogCommon<SstableInfo>>,
pub state_table_info: HummockVersionStateTableInfo,
}
Fields§
§id: HummockVersionId
§levels: HashMap<u64, LevelsCommon<SstableInfo>>
§max_committed_epoch: u64
👎Deprecated
§table_watermarks: HashMap<TableId, Arc<TableWatermarks>>
§table_change_log: HashMap<TableId, TableChangeLogCommon<SstableInfo>>
§state_table_info: HummockVersionStateTableInfo
Implementations§
source§impl HummockVersion
impl HummockVersion
pub fn get_compaction_group_levels( &self, compaction_group_id: CompactionGroupId, ) -> &Levels
pub fn get_compaction_group_levels_mut( &mut self, compaction_group_id: CompactionGroupId, ) -> &mut Levels
pub fn get_sst_ids_by_group_id( &self, compaction_group_id: CompactionGroupId, ) -> impl Iterator<Item = u64> + '_
sourcepub fn get_sst_infos_from_groups<'a>(
&'a self,
select_group: &'a HashSet<CompactionGroupId>,
) -> impl Iterator<Item = &'a SstableInfo> + 'a
pub fn get_sst_infos_from_groups<'a>( &'a self, select_group: &'a HashSet<CompactionGroupId>, ) -> impl Iterator<Item = &'a SstableInfo> + 'a
get_sst_infos_from_groups
doesn’t guarantee that all returned sst info belongs to select_group
.
i.e. select_group
is just a hint.
We separate get_sst_infos_from_groups
and get_sst_infos
because get_sst_infos_from_groups
may be further customized in the future.