From 8465dbd8c2c8d0ceb8a27d47df13a076f80b450c Mon Sep 17 00:00:00 2001 From: Radoslaw Zarzynski Date: Tue, 11 Oct 2022 13:38:30 +0000 Subject: [PATCH] crimson/osd: ClientRequest sends error to client when loading obc fails Signed-off-by: Radoslaw Zarzynski --- src/crimson/osd/osd_operations/client_request.cc | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/crimson/osd/osd_operations/client_request.cc b/src/crimson/osd/osd_operations/client_request.cc index 1d234e23ac2fe..3f2e5c81ba655 100644 --- a/src/crimson/osd/osd_operations/client_request.cc +++ b/src/crimson/osd/osd_operations/client_request.cc @@ -260,11 +260,12 @@ ClientRequest::process_op(instance_handle_t &ihref, Ref &pg) }); } }); - }).safe_then_interruptible([pg=std::move(pg)] (const seq_mode_t mode) { + }).safe_then_interruptible([pg] (const seq_mode_t mode) { return seastar::make_ready_future(mode); - }, PG::load_obc_ertr::all_same_way([](auto &code) { + }, PG::load_obc_ertr::all_same_way([this, pg=std::move(pg)](const auto &code) { logger().error("ClientRequest saw error code {}", code); - return seastar::make_ready_future(seq_mode_t::OUT_OF_ORDER); + assert(code.value() > 0); + return reply_op_error(pg, -code.value()); })); } -- 2.39.5