]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mds: avoid journaling non-auth opened inode
authorYan, Zheng <zheng.z.yan@intel.com>
Thu, 20 Mar 2014 05:05:31 +0000 (13:05 +0800)
committerYan, Zheng <zheng.z.yan@intel.com>
Fri, 28 Mar 2014 18:08:13 +0000 (02:08 +0800)
Exporting inode has AUTH bit set while EExport event is being
journaled.

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
src/mds/journal.cc

index 0c6f6694a2314956a1c44b86930a9acaf6d43684..45d62ea315de8d705636d92569d502a4a41db316 100644 (file)
@@ -157,7 +157,7 @@ void LogSegment::try_to_expire(MDS *mds, C_GatherBuilder &gather_bld)
       CInode *in = *p;
       assert(in->last == CEPH_NOSNAP);
       ++p;
-      if (in->is_auth() && in->is_any_caps()) {
+      if (in->is_auth() && !in->is_ambiguous_auth() && in->is_any_caps()) {
        if (in->is_any_caps_wanted()) {
          dout(20) << "try_to_expire requeueing open file " << *in << dendl;
          if (!le) {