]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mds: make beacon output more informative
authorSage Weil <sage@newdream.net>
Fri, 2 Apr 2010 22:47:45 +0000 (15:47 -0700)
committerSage Weil <sage@newdream.net>
Sat, 3 Apr 2010 03:07:37 +0000 (20:07 -0700)
src/mds/MDS.cc

index 02d9ff9b12541a705f10ff8d4d1ea3922ee71562..e1d092a54a94711fb95d8d5d3581984a75fad564 100644 (file)
@@ -547,23 +547,25 @@ void MDS::beacon_send()
 
 void MDS::handle_mds_beacon(MMDSBeacon *m)
 {
-  dout(10) << "handle_mds_beacon " << ceph_mds_state_name(m->get_state())
-          << " seq " << m->get_seq() << dendl;
   version_t seq = m->get_seq();
 
   // update lab
   if (beacon_seq_stamp.count(seq)) {
     assert(beacon_seq_stamp[seq] > beacon_last_acked_stamp);
     beacon_last_acked_stamp = beacon_seq_stamp[seq];
-    
+    utime_t now = g_clock.now();
+    utime_t rtt = now - beacon_last_acked_stamp;
+
+    dout(10) << "handle_mds_beacon " << ceph_mds_state_name(m->get_state())
+            << " seq " << m->get_seq() 
+            << " rtt " << rtt << dendl;
+
     // clean up seq_stamp map
     while (!beacon_seq_stamp.empty() &&
           beacon_seq_stamp.begin()->first <= seq)
       beacon_seq_stamp.erase(beacon_seq_stamp.begin());
 
-    utime_t now = g_clock.now();
-    if (laggy &&
-       now - beacon_last_acked_stamp < g_conf.mds_beacon_grace) {
+    if (laggy && rtt < g_conf.mds_beacon_grace) {
       dout(1) << " clearing laggy flag" << dendl;
       laggy = false;
       laggy_until = now;
@@ -571,6 +573,9 @@ void MDS::handle_mds_beacon(MMDSBeacon *m)
     }
     
     reset_beacon_killer();
+  } else {
+    dout(10) << "handle_mds_beacon " << ceph_mds_state_name(m->get_state())
+            << " seq " << m->get_seq() << " dne" << dendl;
   }
 
   delete m;