From: Radoslaw Zarzynski Date: Tue, 19 Mar 2024 17:40:26 +0000 (+0000) Subject: crimson/osd: wire MOSDPGPush{,Reply} with ECRecoveryBackend X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=cf9bc7d9ba7f30f88c036581b956536b1e77af58;p=ceph-ci.git crimson/osd: wire MOSDPGPush{,Reply} with ECRecoveryBackend Signed-off-by: Radoslaw Zarzynski --- diff --git a/src/crimson/osd/ec_recovery_backend.cc b/src/crimson/osd/ec_recovery_backend.cc index eb70d27bbc9..57d897830b7 100644 --- a/src/crimson/osd/ec_recovery_backend.cc +++ b/src/crimson/osd/ec_recovery_backend.cc @@ -9,6 +9,8 @@ #include "crimson/osd/ec_recovery_backend.h" #include "crimson/osd/pg.h" #include "crimson/osd/pg_backend.h" +#include "messages/MOSDPGPush.h" +#include "messages/MOSDPGPushReply.h" #include "msg/Message.h" #include "osd/osd_types_fmt.h" @@ -33,6 +35,11 @@ ECRecoveryBackend::handle_recovery_op( crimson::net::ConnectionXcoreRef conn) { switch (m->get_header().type) { + case MSG_OSD_PG_PUSH: + return handle_push(boost::static_pointer_cast(m)); + case MSG_OSD_PG_PUSH_REPLY: + return handle_push_reply( + boost::static_pointer_cast(m)); default: // delegate to parent class for handling backend-agnostic recovery ops. return RecoveryBackend::handle_recovery_op(std::move(m), conn); diff --git a/src/crimson/osd/ec_recovery_backend.h b/src/crimson/osd/ec_recovery_backend.h index 2abac2ed03f..bb86c2eb80a 100644 --- a/src/crimson/osd/ec_recovery_backend.h +++ b/src/crimson/osd/ec_recovery_backend.h @@ -16,6 +16,8 @@ #include "messages/MOSDPGBackfill.h" #include "messages/MOSDPGBackfillRemove.h" +#include "messages/MOSDPGPush.h" +#include "messages/MOSDPGPushReply.h" #include "messages/MOSDPGScan.h" #include "osd/recovery_types.h" #include "osd/osd_types.h" @@ -46,4 +48,10 @@ public: seastar::future<> on_stop() final { return seastar::now(); } + +private: + interruptible_future<> handle_push( + Ref m); + interruptible_future<> handle_push_reply( + Ref m); }; diff --git a/src/crimson/osd/recovery_backend.cc b/src/crimson/osd/recovery_backend.cc index 80fea74fe3f..462c9a31ad5 100644 --- a/src/crimson/osd/recovery_backend.cc +++ b/src/crimson/osd/recovery_backend.cc @@ -14,6 +14,8 @@ #include "crimson/osd/osd_operations/background_recovery.h" #include "messages/MOSDFastDispatchOp.h" +#include "messages/MOSDPGRecoveryDelete.h" +#include "messages/MOSDPGRecoveryDeleteReply.h" #include "osd/osd_types.h" SET_SUBSYS(osd);