From: Zhang Song Date: Wed, 3 Apr 2024 08:01:59 +0000 (+0800) Subject: crimson/common/interruptible_future: add discard_result X-Git-Tag: testing/wip-batrick-testing-20240411.154038~34^2~5 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=870441bb0c02992923ac6e0b6373b6d3770b470b;p=ceph-ci.git crimson/common/interruptible_future: add discard_result Signed-off-by: Zhang Song --- diff --git a/src/crimson/common/interruptible_future.h b/src/crimson/common/interruptible_future.h index dbda2720ce0..27467f23962 100644 --- a/src/crimson/common/interruptible_future.h +++ b/src/crimson/common/interruptible_future.h @@ -801,6 +801,9 @@ public: return safe_then_interruptible(std::forward(args)...); } + auto discard_result() noexcept { + return si_then([](auto &&) {}); + } template && interruptible, int> = 0> diff --git a/src/crimson/os/seastore/object_data_handler.cc b/src/crimson/os/seastore/object_data_handler.cc index 6b1fb45b1ae..d741fd5c451 100644 --- a/src/crimson/os/seastore/object_data_handler.cc +++ b/src/crimson/os/seastore/object_data_handler.cc @@ -499,8 +499,7 @@ ObjectDataHandler::write_ret do_removals( return ctx.tm.remove( ctx.t, pin->get_key() - ).si_then( - [](auto){}, + ).discard_result().handle_error_interruptible( ObjectDataHandler::write_iertr::pass_further{}, crimson::ct_error::assert_all{ "object_data_handler::do_removals invalid error" diff --git a/src/crimson/os/seastore/omap_manager/btree/omap_btree_node_impl.cc b/src/crimson/os/seastore/omap_manager/btree/omap_btree_node_impl.cc index 307f82c05e3..8d06accef1e 100644 --- a/src/crimson/os/seastore/omap_manager/btree/omap_btree_node_impl.cc +++ b/src/crimson/os/seastore/omap_manager/btree/omap_btree_node_impl.cc @@ -41,7 +41,7 @@ dec_ref_ret dec_ref(omap_context_t oc, T&& addr) { crimson::ct_error::assert_all{ "Invalid error in OMapInnerNode helper dec_ref" } - ).si_then([](auto &&e) {}); + ).discard_result(); } /** diff --git a/src/crimson/tools/store_nbd/tm_driver.cc b/src/crimson/tools/store_nbd/tm_driver.cc index 01658c4f063..967a46ccd45 100644 --- a/src/crimson/tools/store_nbd/tm_driver.cc +++ b/src/crimson/tools/store_nbd/tm_driver.cc @@ -28,7 +28,7 @@ seastar::future<> TMDriver::write( [this, offset, &ptr](auto& t) { return tm->remove(t, offset - ).si_then([](auto){}).handle_error_interruptible( + ).discard_result().handle_error_interruptible( crimson::ct_error::enoent::handle([](auto) { return seastar::now(); }), crimson::ct_error::pass_further_all{} ).si_then([this, offset, &t, &ptr] { diff --git a/src/test/crimson/seastore/test_seastore_cache.cc b/src/test/crimson/seastore/test_seastore_cache.cc index 2b0b546b159..b099ddb684a 100644 --- a/src/test/crimson/seastore/test_seastore_cache.cc +++ b/src/test/crimson/seastore/test_seastore_cache.cc @@ -100,7 +100,7 @@ struct cache_test_t : public seastar_test_suite_t { return cache->mkfs(t); }).safe_then([this, &ref_t] { return submit_transaction(std::move(ref_t) - ).then([](auto p) {}); + ).discard_result(); }); }); }).handle_error(