From 44a11595d1d655ff7ce7e44a8886b76518129d0b Mon Sep 17 00:00:00 2001 From: Kefu Chai Date: Sun, 6 Oct 2019 17:19:05 +0800 Subject: [PATCH] crimson/osd: ignore returned futures the peering events are handled in the background, we need to make sure the these continuations won't outlive the PG before destroying it though. Signed-off-by: Kefu Chai --- src/crimson/osd/pg.cc | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/crimson/osd/pg.cc b/src/crimson/osd/pg.cc index 64e129cfd8e..8372eea45f3 100644 --- a/src/crimson/osd/pg.cc +++ b/src/crimson/osd/pg.cc @@ -139,7 +139,8 @@ bool PG::try_flush_or_schedule_async() { void PG::queue_check_readable(epoch_t last_peering_reset, ceph::timespan delay) { - seastar::sleep(delay).then([last_peering_reset, this] { + // handle the peering event in the background + std::ignore = seastar::sleep(delay).then([last_peering_reset, this] { shard_services.start_operation( this, shard_services, @@ -259,7 +260,8 @@ HeartbeatStampsRef PG::get_hb_stamps(int peer) void PG::schedule_renew_lease(epoch_t last_peering_reset, ceph::timespan delay) { - seastar::sleep(delay).then([last_peering_reset, this] { + // handle the peering event in the background + std::ignore = seastar::sleep(delay).then([last_peering_reset, this] { shard_services.start_operation( this, shard_services, -- 2.39.5