#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"
crimson::net::ConnectionXcoreRef conn)
{
switch (m->get_header().type) {
+ case MSG_OSD_PG_PUSH:
+ return handle_push(boost::static_pointer_cast<MOSDPGPush>(m));
+ case MSG_OSD_PG_PUSH_REPLY:
+ return handle_push_reply(
+ boost::static_pointer_cast<MOSDPGPushReply>(m));
default:
// delegate to parent class for handling backend-agnostic recovery ops.
return RecoveryBackend::handle_recovery_op(std::move(m), conn);
#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"
seastar::future<> on_stop() final {
return seastar::now();
}
+
+private:
+ interruptible_future<> handle_push(
+ Ref<MOSDPGPush> m);
+ interruptible_future<> handle_push_reply(
+ Ref<MOSDPGPushReply> m);
};
#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);