mirror of
https://github.com/scylladb/scylladb.git
synced 2026-04-29 12:47:02 +00:00
This is important for multiple compaction groups, as they cannot share state that must span a single SSTable set. The solution is about: 1) Decoupling compaction strategy from its state; making compaction_strategy a pure stateless entity 2) Each compaction group storing its own compaction strategy state 3) Compaction group feeds its state into compaction strategy whenever needed Closes #13351 * github.com:scylladb/scylladb: compaction: TWCS: wire up compaction_strategy_state compaction: LCS: wire up compaction_strategy_state compaction: Expose compaction_strategy_state through table_state replica: Add compaction_strategy_state to compaction group compaction: Introduce compaction_strategy_state compaction: add table_state param to compaction_strategy::notify_completion() compaction: LCS: extract state into a separate struct compaction: TWCS: prepare for stateless strategy compaction: TWCS: extract state into a separate struct compaction: add const-qualifier to a few compaction_strategy methods