From: Radoslaw Zarzynski Date: Thu, 24 Nov 2022 16:26:38 +0000 (+0000) Subject: crimson/osd: settle SnapMapper within crimson'o PG X-Git-Tag: v18.1.0~260^2~29 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=cb2f8325e8c760817165fc419c880e9656a27bb2;p=ceph.git crimson/osd: settle SnapMapper within crimson'o PG Signed-off-by: Radoslaw Zarzynski --- diff --git a/src/crimson/osd/CMakeLists.txt b/src/crimson/osd/CMakeLists.txt index 3b7c7a3f58e7..4b24b5a654ca 100644 --- a/src/crimson/osd/CMakeLists.txt +++ b/src/crimson/osd/CMakeLists.txt @@ -46,6 +46,7 @@ add_executable(crimson-osd ${PROJECT_SOURCE_DIR}/src/osd/PGStateUtils.cc ${PROJECT_SOURCE_DIR}/src/osd/MissingLoc.cc ${PROJECT_SOURCE_DIR}/src/osd/PGLog.cc + ${PROJECT_SOURCE_DIR}/src/osd/SnapMapper.cc ${PROJECT_SOURCE_DIR}/src/osd/recovery_types.cc ${PROJECT_SOURCE_DIR}/src/osd/osd_perf_counters.cc watch.cc diff --git a/src/crimson/osd/pg.cc b/src/crimson/osd/pg.cc index 679099a92724..fdba4d49a5a1 100644 --- a/src/crimson/osd/pg.cc +++ b/src/crimson/osd/pg.cc @@ -142,6 +142,17 @@ PG::PG( obc_registry, *backend.get(), *this}, + osdriver( + &shard_services.get_store(), + coll_ref, + pgid.make_pgmeta_oid()), + snap_mapper( + this->shard_services.get_cct(), + &osdriver, + pgid.ps(), + pgid.get_split_bits(pool.get_pg_num()), + pgid.pool(), + pgid.shard), wait_for_active_blocker(this) { peering_state.set_backend_predicates( diff --git a/src/crimson/osd/pg.h b/src/crimson/osd/pg.h index 48e4d1fd210c..dfbb8acace81 100644 --- a/src/crimson/osd/pg.h +++ b/src/crimson/osd/pg.h @@ -17,6 +17,7 @@ #include "osd/osd_types.h" #include "crimson/osd/object_context.h" #include "osd/PeeringState.h" +#include "osd/SnapMapper.h" #include "crimson/common/interruptible_future.h" #include "crimson/common/type_helpers.h" @@ -614,6 +615,11 @@ public: ObjectContextRegistry obc_registry; ObjectContextLoader obc_loader; +private: + OSDriver osdriver; + SnapMapper snap_mapper; + +public: // PeeringListener void publish_stats_to_osd() final; void clear_publish_stats() final;