]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mds: process delayed expire if exporting dir cancelled in warnning state
authorYan, Zheng <zheng.z.yan@intel.com>
Wed, 6 Nov 2013 02:31:06 +0000 (10:31 +0800)
committerYan, Zheng <zheng.z.yan@intel.com>
Mon, 16 Dec 2013 04:15:23 +0000 (12:15 +0800)
we may add delayed expire when exporting dir is in warnning state

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

index c57f0ca28ec8b37b6f8beda995189858d70c418d..7f5ae677afce54178a895990f4ea9087e67a0385 100644 (file)
@@ -277,9 +277,12 @@ void Migrator::export_try_cancel(CDir *dir)
         bd->put(CDir::PIN_EXPORTBOUND);
         bd->state_clear(CDir::STATE_EXPORTBOUND);
       }
-      // notify bystanders
-      if (state == EXPORT_WARNING)
-        export_notify_abort(dir, bounds);
+      if (state == EXPORT_WARNING) {
+       // notify bystanders
+       export_notify_abort(dir, bounds);
+       // process delayed expires
+       cache->process_delayed_expire(dir);
+      }
     }
     dir->unfreeze_tree();
     cache->adjust_subtree_auth(dir, mds->get_nodeid());