]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mds: fix _freeze_dir assert for refragment case
authorSage Weil <sage.weil@dreamhost.com>
Tue, 12 Apr 2011 22:32:17 +0000 (15:32 -0700)
committerSage Weil <sage@newdream.net>
Wed, 13 Apr 2011 20:58:18 +0000 (13:58 -0700)
The is_freezeable_dir() is true at freeze time but not forever after over
the lifetime of the freeze.  We split later on and _freeze_dir on the new
fragments, so this assertion isn't necessarily true then.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
src/mds/CDir.cc

index a93664ecb1faa03a7bfca08c4cc1f46c43bce12d..0b528fff770c25f49ee04ed414e2da31441bcd09 100644 (file)
@@ -2442,7 +2442,9 @@ bool CDir::freeze_dir()
 void CDir::_freeze_dir()
 {
   dout(10) << "_freeze_dir " << *this << dendl;
-  assert(is_freezeable_dir(true));
+  //assert(is_freezeable_dir(true));
+  // not always true during split because the original fragment may have frozen a while
+  // ago and we're just now getting around to breaking it up.
 
   state_clear(STATE_FREEZINGDIR);
   state_set(STATE_FROZENDIR);