Signed-off-by: Xuehan Xu <xxhdx1985126@gmail.com>
shard_services.remove_want_pg_temp(pgid.pgid);
}
void publish_stats_to_osd() final {
- // Not needed yet
+ if (!is_primary())
+ return;
+
+ (void) peering_state.prepare_stats_for_publish(
+ false,
+ pg_stat_t(),
+ object_stat_collection_t());
}
void clear_publish_stats() final {
// Not needed yet
if (!pg->is_unreadable_object(soid)) {
pg->get_recovery_backend()->get_recovering(soid).set_readable();
}
+ pg->publish_stats_to_osd();
}
}
{
logger().info("{} {}", __func__, soid);
pg->get_peering_state().object_recovered(soid, stat_diff);
+ pg->publish_stats_to_osd();
auto& recovery_waiter = pg->get_recovery_backend()->get_recovering(soid);
if (!is_delete)
recovery_waiter.obc->drop_recovery_read();
virtual epoch_t get_last_peering_reset() const = 0;
virtual const pg_info_t& get_info() const= 0;
virtual seastar::future<> stop() = 0;
+ virtual void publish_stats_to_osd() = 0;
};