pub type PbCompactionConfig = CompactionConfig;Aliased Type§
pub struct PbCompactionConfig {Show 30 fields
pub max_bytes_for_level_base: u64,
pub max_level: u64,
pub max_bytes_for_level_multiplier: u64,
pub max_compaction_bytes: u64,
pub sub_level_max_compaction_bytes: u64,
pub level0_tier_compact_file_number: u64,
pub compaction_mode: i32,
pub compression_algorithm: Vec<String>,
pub target_file_size_base: u64,
pub compaction_filter_mask: u32,
pub max_sub_compaction: u32,
pub max_space_reclaim_bytes: u64,
pub split_by_state_table: bool,
pub split_weight_by_vnode: u32,
pub level0_stop_write_threshold_sub_level_number: u64,
pub level0_max_compact_file_number: u64,
pub level0_sub_level_compact_level_count: u32,
pub level0_overlapping_sub_level_compact_level_count: u32,
pub tombstone_reclaim_ratio: u32,
pub enable_emergency_picker: bool,
pub max_l0_compact_level_count: Option<u32>,
pub sst_allowed_trivial_move_min_size: Option<u64>,
pub disable_auto_group_scheduling: Option<bool>,
pub max_overlapping_level_size: Option<u64>,
pub emergency_level0_sst_file_count: Option<u32>,
pub emergency_level0_sub_level_partition: Option<u32>,
pub level0_stop_write_threshold_max_sst_count: Option<u32>,
pub level0_stop_write_threshold_max_size: Option<u64>,
pub sst_allowed_trivial_move_max_count: Option<u32>,
pub enable_optimize_l0_interval_selection: Option<bool>,
}Fields§
§max_bytes_for_level_base: u64§max_level: u64§max_bytes_for_level_multiplier: u64§max_compaction_bytes: u64§sub_level_max_compaction_bytes: u64§level0_tier_compact_file_number: u64§compaction_mode: i32§compression_algorithm: Vec<String>§target_file_size_base: u64§compaction_filter_mask: u32§max_sub_compaction: u32§max_space_reclaim_bytes: u64§split_by_state_table: bool§split_weight_by_vnode: u32Compaction needs to cut the state table every time 1/weight of vnodes in the table have been processed.
level0_stop_write_threshold_sub_level_number: u64soft limit for max number of sub level number
level0_max_compact_file_number: u64§level0_sub_level_compact_level_count: u32§level0_overlapping_sub_level_compact_level_count: u32for tier compaction pick overlapping level
tombstone_reclaim_ratio: u32§enable_emergency_picker: bool§max_l0_compact_level_count: Option<u32>The limitation of the level count of l0 compaction
sst_allowed_trivial_move_min_size: Option<u64>The limitation of base level trivial move sst size
disable_auto_group_scheduling: Option<bool>The limitation of auto group scheduling
max_overlapping_level_size: Option<u64>The limitation of the max size of the overlapping-level for the compaction
hummock will reorg the commit-sstables to the multi overlapping-level if the size of the commit-sstables is larger than max_overlapping_level_size
emergency_level0_sst_file_count: Option<u32>The emergency compaction limitations for the level0 sstables file count
emergency_level0_sub_level_partition: Option<u32>The emergency compaction limitations for the level0 sub level partition
level0_stop_write_threshold_max_sst_count: Option<u32>The limitation of the max sst count of the level0 to trigger the write stop
level0_stop_write_threshold_max_size: Option<u64>The limitation of the max sst size of the level0 to trigger the write stop
sst_allowed_trivial_move_max_count: Option<u32>The limitation of the max sst count of the trivial move task
enable_optimize_l0_interval_selection: Option<bool>Enable the optimization of the interval selection for the level0 compaction