diff --git a/src/mds/MDSDaemon.cc b/src/mds/MDSDaemon.cc index 7d23722792c..d15040ea6df 100644 --- a/src/mds/MDSDaemon.cc +++ b/src/mds/MDSDaemon.cc @@ -517,18 +517,10 @@ void MDSDaemon::tick() // reschedule reset_tick(); - if (beacon.is_laggy()) { - dout(5) << "tick bailing out since we seem laggy" << dendl; - return; - } - // Call through to subsystems' tick functions if (mds_rank) { mds_rank->tick(); } - - // Expose ourselves to Beacon to update health indicators - beacon.notify_health(mds_rank); } /* This function DOES put the passed message before returning*/ diff --git a/src/mds/MDSRank.cc b/src/mds/MDSRank.cc index 715bf832ec0..8c04b2f3fde 100644 --- a/src/mds/MDSRank.cc +++ b/src/mds/MDSRank.cc @@ -150,6 +150,11 @@ void MDSRankDispatcher::tick() { heartbeat_reset(); + if (beacon.is_laggy()) { + dout(5) << "tick bailing out since we seem laggy" << dendl; + return; + } + check_ops_in_flight(); // Wake up thread in case we use to be laggy and have waiting_for_nolaggy @@ -194,6 +199,9 @@ void MDSRankDispatcher::tick() if (snapserver) snapserver->check_osd_map(false); } + + // Expose ourselves to Beacon to update health indicators + beacon.notify_health(this); } void MDSRankDispatcher::shutdown()