]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mds: flush log on fragment
authorSage Weil <sage@newdream.net>
Wed, 17 Nov 2010 16:42:44 +0000 (08:42 -0800)
committerSage Weil <sage@newdream.net>
Wed, 17 Nov 2010 21:06:02 +0000 (13:06 -0800)
This makes request lock auth_pins expire, so the fragment moves along.
Otherwise we can end up waiting for the log flush timer to go off.

This isn't a complete solution; in-progress requests won't know to flush.

Signed-off-by: Sage Weil <sage@newdream.net>
src/mds/MDCache.cc

index 6b472ed18d7e6dab7711beb863e6622f4beda5a9..db8888c0040975b13f560702acde876db3b7fea9 100644 (file)
@@ -8809,6 +8809,9 @@ void MDCache::fragment_mark_and_complete(list<CDir*>& dirs)
       dout(15) << " already marked " << *dir << dendl;
     }
   }
+
+  // flush log so that request auth_pins are retired
+  mds->mdlog->flush();
 }
 
 void MDCache::fragment_unmark_unfreeze_dirs(list<CDir*>& dirs)