summaryrefslogtreecommitdiffstats
path: root/src/crimson
diff options
context:
space:
mode:
authorKefu Chai <kchai@redhat.com>2019-10-06 11:19:05 +0200
committerKefu Chai <kchai@redhat.com>2019-10-06 11:20:28 +0200
commit44a11595d1d655ff7ce7e44a8886b76518129d0b (patch)
treeb0321d1848718a0a0987b03e8ee622cbec682b96 /src/crimson
parentcrimson/osd: should return ostream in operator<<() (diff)
downloadceph-44a11595d1d655ff7ce7e44a8886b76518129d0b.tar.xz
ceph-44a11595d1d655ff7ce7e44a8886b76518129d0b.zip
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 <kchai@redhat.com>
Diffstat (limited to 'src/crimson')
-rw-r--r--src/crimson/osd/pg.cc6
1 files 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<LocalPeeringEvent>(
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<LocalPeeringEvent>(
this,
shard_services,