crimson/osd: settle SnapMapper within crimson'o PG

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
This commit is contained in:
Radoslaw Zarzynski 2022-11-24 16:26:38 +00:00
parent e57d3bb082
commit cb2f8325e8
3 changed files with 18 additions and 0 deletions

View File

@ -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

View File

@ -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(

View File

@ -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;