diff --git a/src/v/cloud_topics/level_one/frontend_reader/BUILD b/src/v/cloud_topics/level_one/frontend_reader/BUILD index 951aada4262d6..de754e3be3438 100644 --- a/src/v/cloud_topics/level_one/frontend_reader/BUILD +++ b/src/v/cloud_topics/level_one/frontend_reader/BUILD @@ -59,6 +59,7 @@ redpanda_cc_library( "//src/v/cloud_topics/level_one/metastore:retry", "//src/v/model", "//src/v/model:timeout_clock", + "//src/v/ssx:future_util", "//src/v/utils:prefix_logger", "//src/v/utils:retry_chain_node", "@seastar", diff --git a/src/v/cloud_topics/level_one/frontend_reader/level_one_reader.cc b/src/v/cloud_topics/level_one/frontend_reader/level_one_reader.cc index 7a94888d5b326..b9663d5e2b4b1 100644 --- a/src/v/cloud_topics/level_one/frontend_reader/level_one_reader.cc +++ b/src/v/cloud_topics/level_one/frontend_reader/level_one_reader.cc @@ -14,6 +14,7 @@ #include "cloud_topics/logger.h" #include "model/fundamental.h" #include "model/timeout_clock.h" +#include "ssx/future-util.h" #include "utils/retry_chain_node.h" #include @@ -63,10 +64,15 @@ ss::future level_one_log_reader_impl::do_load_slice( model::timeout_clock::time_point deadline) { try { - return read_some(deadline); + co_return co_await read_some(deadline); } catch (...) { - vlog( - _log.error, "Reader caught exception: {}", std::current_exception()); + auto ex = std::current_exception(); + vlogl( + _log, + ssx::is_shutdown_exception(ex) ? ss::log_level::debug + : ss::log_level::warn, + "Reader caught exception: {}", + ex); set_end_of_stream(); throw; } diff --git a/src/v/cloud_topics/level_zero/frontend_reader/BUILD b/src/v/cloud_topics/level_zero/frontend_reader/BUILD index ec5d5174e07a8..a7f403bdf61f7 100644 --- a/src/v/cloud_topics/level_zero/frontend_reader/BUILD +++ b/src/v/cloud_topics/level_zero/frontend_reader/BUILD @@ -24,7 +24,6 @@ redpanda_cc_library( "//src/v/cloud_topics/level_zero/stm:placeholder", "//src/v/cluster", "//src/v/config", - "//src/v/ssx:future_util", ], visibility = ["//visibility:public"], deps = [ diff --git a/src/v/cloud_topics/level_zero/frontend_reader/level_zero_reader.cc b/src/v/cloud_topics/level_zero/frontend_reader/level_zero_reader.cc index 74e6ada889650..ba7f40d1ae585 100644 --- a/src/v/cloud_topics/level_zero/frontend_reader/level_zero_reader.cc +++ b/src/v/cloud_topics/level_zero/frontend_reader/level_zero_reader.cc @@ -19,7 +19,6 @@ #include "cluster/partition.h" #include "config/configuration.h" #include "model/timeout_clock.h" -#include "ssx/future-util.h" #include @@ -49,13 +48,13 @@ ss::future level_zero_log_reader_impl::do_load_slice( model::timeout_clock::time_point deadline) { try { - return read_some(deadline); + co_return co_await read_some(deadline); } catch (...) { auto ex = std::current_exception(); vlogl( _log, ssx::is_shutdown_exception(ex) ? ss::log_level::debug - : ss::log_level::error, + : ss::log_level::warn, "Reader caught exception: {}", ex); set_end_of_stream();