]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/mds/MDSContext.cc
import ceph 15.2.16
[ceph.git] / ceph / src / mds / MDSContext.cc
index 94726a2cb4f45d2c77b7e30be5a163c0ed2aff35..f96fc54202a78980f878a5dd312897f0e0343833 100644 (file)
@@ -107,8 +107,11 @@ void MDSIOContextBase::complete(int r) {
     return;
   }
 
-  if (r == -EBLACKLISTED) {
-    derr << "MDSIOContextBase: blacklisted!  Restarting..." << dendl;
+  // It's possible that the osd op requests will be stuck and then times out
+  // after "rados_osd_op_timeout", the mds won't know what we should it, just
+  // respawn it.
+  if (r == -EBLACKLISTED || r == -ETIMEDOUT) {
+    derr << "MDSIOContextBase: failed with " << r << ", restarting..." << dendl;
     mds->respawn();
   } else {
     MDSContext::complete(r);