const PGLog &get_log() const override {
return peering_state.get_pg_log();
}
- DoutPrefixProvider *get_dpp() override {
- return this;
- }
void add_temp_obj(const hobject_t &oid) override {
get_backend().add_temp_obj(oid);
}
ShardServices& get_shard_services() final {
return shard_services;
}
- DoutPrefixProvider& get_dpp() final {
- return *this;
+ DoutPrefixProvider* get_dpp() final {
+ return this;
}
seastar::future<> stop();
private:
eversion_t need)
{
LOG_PREFIX(PGRecovery::recover_object_with_throttle);
- DEBUGDPP("{} {}", pg->get_dpp(), soid, need);
+ DEBUGDPP("{} {}", *pg->get_dpp(), soid, need);
auto releaser = co_await interruptor::make_interruptible(
pg->get_shard_services().get_throttle(
crimson::osd::scheduler::params_t{
1, 0, 0, SchedulerClass::background_best_effort
}));
- DEBUGDPP("got throttle: {} {}", pg->get_dpp(), soid, need);
+ DEBUGDPP("got throttle: {} {}", *pg->get_dpp(), soid, need);
co_await pg->get_recovery_backend()->recover_object(soid, need);
co_return;
}
class PGRecoveryListener {
public:
virtual crimson::osd::ShardServices& get_shard_services() = 0;
- virtual DoutPrefixProvider& get_dpp() = 0;
+ virtual DoutPrefixProvider* get_dpp() = 0;
virtual PGRecovery* get_recovery_handler() = 0;
virtual epoch_t get_osdmap_epoch() const = 0;
virtual bool is_primary() const = 0;