From 1601f32ca9a327cef1b551ffda2335cfe832e152 Mon Sep 17 00:00:00 2001 From: "Yan, Zheng" Date: Thu, 29 Nov 2018 11:26:36 +0800 Subject: [PATCH] client: don't update importing caps' mseq when handing cap export Updating mseq makes client think importer mds has accepted all prior cap messages and importer mds knows what caps client wants. Actually some cap messages may have been dropped because of mseq mismatch. If mseq is left untouched, importing caps' mds_wanted later will get reset by cap import message. Signed-off-by: "Yan, Zheng" Fixes: http://tracker.ceph.com/issues/37464 (cherry picked from commit d308b54db57591eff6a5e17dfc6c385156a79f53) --- src/client/Client.cc | 1 - 1 file changed, 1 deletion(-) diff --git a/src/client/Client.cc b/src/client/Client.cc index 1380eb5646ee..53bfd28cb649 100644 --- a/src/client/Client.cc +++ b/src/client/Client.cc @@ -4843,7 +4843,6 @@ void Client::handle_cap_export(MetaSession *session, Inode *in, MClientCaps *m) tcap.cap_id = m->peer.cap_id; tcap.seq = m->peer.seq - 1; tcap.issue_seq = tcap.seq; - tcap.mseq = m->peer.mseq; tcap.issued |= cap.issued; tcap.implemented |= cap.issued; if (&cap == in->auth_cap) -- 2.47.3