]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mds: fix journaling of root default_file_layout
authorSage Weil <sage@newdream.net>
Wed, 19 Jan 2011 17:50:41 +0000 (09:50 -0800)
committerSage Weil <sage@newdream.net>
Wed, 19 Jan 2011 17:50:41 +0000 (09:50 -0800)
We need to include the default_file_layout (if any) on root inodes, too.

Fixes: #725
Signed-off-by: Sage Weil <sage@newdream.net>
src/mds/events/EMetaBlob.h

index bd5ad3bf291a6684bb4a70cfa88906df12b02be7..d8ec92593605d96b31b6ad626ad27aa5a5eab624 100644 (file)
@@ -607,6 +607,12 @@ private:
     if (!pdft) pdft = &in->dirfragtree;
     if (!px) px = &in->xattrs;
 
+    default_file_layout *default_layout = NULL;
+    if (in->is_dir())
+      default_layout = (in->get_projected_node() ?
+                           in->get_projected_node()->dir_layout :
+                           in->default_layout);
+
     bufferlist snapbl;
     if (psnapbl)
       snapbl = *psnapbl;
@@ -620,7 +626,7 @@ private:
                       0,
                       *pi, *pdft, *px,
                       in->symlink, snapbl,
-                      dirty);
+                      dirty, default_layout);
     return &root->inode;
   }