]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
client: abort requests on session reject
authorJohn Spray <john.spray@redhat.com>
Fri, 27 Nov 2015 13:23:29 +0000 (13:23 +0000)
committerJohn Spray <john.spray@redhat.com>
Tue, 5 Jan 2016 14:05:04 +0000 (14:05 +0000)
...and by extension make the mount fail because the
stat on the root will fail during mount.

Signed-off-by: John Spray <john.spray@redhat.com>
src/client/Client.cc

index 9d4caf9f9973d25702779d69b0395cc71a2ffade..f5127ebdaecbcaf7b183ad95d99bab1da62e4c1c 100644 (file)
@@ -1605,6 +1605,11 @@ int Client::make_request(MetaRequest *request,
       if (session->state == MetaSession::STATE_OPENING) {
        ldout(cct, 10) << "waiting for session to mds." << mds << " to open" << dendl;
        wait_on_context_list(session->waiting_for_open);
+        // Abort requests on REJECT from MDS
+        if (rejected_by_mds.count(mds)) {
+          request->aborted = true;
+          break;
+        }
        continue;
       }