]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mds: heartbeat_reset in dispatch
authorJohn Spray <john.spray@redhat.com>
Mon, 6 Mar 2017 11:24:50 +0000 (11:24 +0000)
committerNathan Cutler <ncutler@suse.com>
Fri, 14 Apr 2017 21:55:34 +0000 (23:55 +0200)
Previously we only heartbeated in tick.  However, our locking is
not guaranteed to be fair, so on a super-busy dispatch queue it may be
possible for the heartbeat to time out while the tick() function
is waiting for mds_lock.

Fixes: http://tracker.ceph.com/issues/19118
Signed-off-by: John Spray <john.spray@redhat.com>
(cherry picked from commit 819394549af10532419d88742fae3a69d2ea487d)

src/mds/MDSRank.cc

index e1f28f6c0218f62a0856f2f8457d8a17229a5221..4a487cd50ea801c8131a5f2fffe6bc6b9c93946b 100644 (file)
@@ -438,6 +438,8 @@ bool MDSRank::_dispatch(Message *m, bool new_msg)
       dout(0) << "unrecognized message " << *m << dendl;
       return false;
     }
+
+    heartbeat_reset();
   }
 
   if (dispatch_depth > 1)