From 42eaf6d9d421027a1748fa28ed2c22a8e79a1dbe Mon Sep 17 00:00:00 2001 From: Pavel Emelyanov Date: Tue, 19 May 2026 18:22:35 +0300 Subject: [PATCH] streaming: Use inject_parameter() for order_sstables_for_streaming Replace the verbose enter() + get_injection_parameters() + manual map lookup pattern with a single inject_parameter() call. This API combines the enabled check and typed parameter extraction in one step, making the code more concise and readable. Signed-off-by: Pavel Emelyanov Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- streaming/stream_blob.cc | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/streaming/stream_blob.cc b/streaming/stream_blob.cc index 639cd0fab6..7e9758a757 100644 --- a/streaming/stream_blob.cc +++ b/streaming/stream_blob.cc @@ -762,18 +762,15 @@ future tablet_stream_files_handler(replica::database& db, } else { auto sstables = co_await table.take_storage_snapshot(req.range); co_await utils::get_local_injector().inject("wait_before_tablet_stream_files_after_snapshot", utils::wait_for_message(std::chrono::seconds(60))); - co_await utils::get_local_injector().inject("order_sstables_for_streaming", [&sstables] (auto& handler) -> future<> { - if (sstables.size() == 3) { - // make sure the sstables are ordered so that the sstable containing shadowed data is streamed last - const std::string_view shadowed_file = handler.template get("shadowed_file").value(); - for (int index: {0, 1}) { - if (sstables[index].sst->component_basename(component_type::Data) == shadowed_file) { - std::swap(sstables[index], sstables[2]); - } + if (auto shadowed_file = utils::get_local_injector().inject_parameter("order_sstables_for_streaming", "shadowed_file"); + shadowed_file && sstables.size() == 3) { + // make sure the sstables are ordered so that the sstable containing shadowed data is streamed last + for (int index: {0, 1}) { + if (sstables[index].sst->component_basename(component_type::Data) == *shadowed_file) { + std::swap(sstables[index], sstables[2]); } } - return make_ready_future<>(); - }); + } auto& sst_gen = table.get_sstable_generation_generator();