diff --git a/src/client/Client.cc b/src/client/Client.cc index 7043f9058a405..12bb20e00d97d 100644 --- a/src/client/Client.cc +++ b/src/client/Client.cc @@ -1465,6 +1465,10 @@ mds_rank_t Client::choose_target_mds(MetaRequest *req, Inode** phash_diri) mds = in->fragmap[fg]; if (phash_diri) *phash_diri = in; + } else if (in->auth_cap) { + mds = in->auth_cap->session->mds_num; + } + if (mds >= 0) { ldout(cct, 10) << "choose_target_mds from dirfragtree hash" << dendl; goto out; }