]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
client: add warning when cap != in->auth_cap. 32065/head
authorshenhang <shenhang@kuaishou.com>
Mon, 16 Sep 2019 11:21:04 +0000 (19:21 +0800)
committerNathan Cutler <ncutler@suse.com>
Fri, 6 Dec 2019 12:58:36 +0000 (13:58 +0100)
Fixes: https://tracker.ceph.com/issues/41799
Signed-off-by: Shen Hang <harryshen18@gmail.com>
(cherry picked from commit 387686c560c6266904172732740c62db7582e4ef)

src/client/Client.cc

index 08bfb2f3d5bff860fb241a6a40b1132724047ea0..603aae0a867720c354279f55112e097c4c2c3833 100644 (file)
@@ -4025,7 +4025,9 @@ void Client::add_update_cap(Inode *in, MetaSession *mds_session, uint64_t cap_id
      * don't remove caps.
      */
     if (ceph_seq_cmp(seq, cap.seq) <= 0) {
-      ceph_assert(&cap == in->auth_cap);
+      if (&cap != in->auth_cap)
+         ldout(cct, 0) << "WARNING: " <<  "inode " << *in << " caps on mds." << mds << " != auth_cap." << dendl;
+
       ceph_assert(cap.cap_id == cap_id);
       seq = cap.seq;
       mseq = cap.mseq;