risingwave_storage::hummock::compactor::shared_buffer_compact

Function compact_shared_buffer

source
async fn compact_shared_buffer<const IS_NEW_VALUE: bool>(
    context: CompactorContext,
    sstable_object_id_manager: SstableObjectIdManagerRef,
    compaction_catalog_manager_ref: CompactionCatalogManagerRef,
    payload: Vec<ImmutableMemtable>,
) -> HummockResult<Vec<LocalSstableInfo>>
Expand description

For compaction from shared buffer to level 0, this is the only function gets called.

The IS_NEW_VALUE flag means for the given payload, we are doing compaction using its new value or old value. When IS_NEW_VALUE is false, we are compacting with old value, and the payload imms should have old_values not None