mirror of
https://github.com/ceph/ceph
synced 2025-01-10 13:10:46 +00:00
mds: set dir layout during replay
Need to copy layout from the EMetaBlob::fullbit into the inode. Signed-off-by: Sage Weil <sage@newdream.net>
This commit is contained in:
parent
cdc2b89869
commit
f5958ad52e
@ -373,6 +373,8 @@ void EMetaBlob::replay(MDS *mds, LogSegment *logseg)
|
||||
in->xattrs = root->xattrs;
|
||||
if (in->inode.is_dir()) {
|
||||
in->dirfragtree = root->dirfragtree;
|
||||
delete in->default_layout;
|
||||
in->default_layout = root->dir_layout;
|
||||
/*
|
||||
* we can do this before linking hte inode bc the split_at would
|
||||
* be a no-op.. we have no children (namely open snaprealms) to
|
||||
@ -469,6 +471,8 @@ void EMetaBlob::replay(MDS *mds, LogSegment *logseg)
|
||||
in->xattrs = p->xattrs;
|
||||
if (in->inode.is_dir()) {
|
||||
in->dirfragtree = p->dirfragtree;
|
||||
delete in->default_layout;
|
||||
in->default_layout = p->dir_layout;
|
||||
/*
|
||||
* we can do this before linking hte inode bc the split_at would
|
||||
* be a no-op.. we have no children (namely open snaprealms) to
|
||||
@ -507,6 +511,8 @@ void EMetaBlob::replay(MDS *mds, LogSegment *logseg)
|
||||
in->xattrs = p->xattrs;
|
||||
if (in->inode.is_dir()) {
|
||||
in->dirfragtree = p->dirfragtree;
|
||||
delete in->default_layout;
|
||||
in->default_layout = p->dir_layout;
|
||||
in->decode_snap_blob(p->snapbl);
|
||||
}
|
||||
if (in->inode.is_symlink()) in->symlink = p->symlink;
|
||||
|
Loading…
Reference in New Issue
Block a user