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