From: xie xingguo Date: Wed, 30 Mar 2016 07:30:20 +0000 (+0800) Subject: osd: initialize last_pg_stats_ack correctly on first pg_stats message sending X-Git-Tag: v10.1.1~46^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=5c5c8dfefec029686cf2550bae415ab397af938c;p=ceph.git osd: initialize last_pg_stats_ack correctly on first pg_stats message sending So we don't potentially make an incorrect judgement in the tick_without_osd_lock() procedure if OSD's first pg_stats message was sent, which as a result shall cause an unnecessary hunting of new monitor. Signed-off-by: xie xingguo --- diff --git a/src/osd/OSD.cc b/src/osd/OSD.cc index e51c1191a4c5..823f4170d8ad 100644 --- a/src/osd/OSD.cc +++ b/src/osd/OSD.cc @@ -5038,7 +5038,7 @@ void OSD::send_pg_stats(const utime_t &now) pg->pg_stats_publish_lock.Unlock(); } - if (!outstanding_pg_stats.empty()) { + if (last_pg_stats_ack == utime_t() || !outstanding_pg_stats.empty()) { last_pg_stats_ack = ceph_clock_now(cct); } outstanding_pg_stats.insert(tid);