From: Sage Weil Date: Wed, 17 Aug 2011 22:33:28 +0000 (-0700) Subject: mds: use snaprealm projection for MDCache::snaprealm_create() X-Git-Tag: v0.34~67 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=08fb8a614d5f85e0693b97ddf56bc81d0fe3a923;p=ceph.git mds: use snaprealm projection for MDCache::snaprealm_create() Signed-off-by: Sage Weil --- diff --git a/src/mds/MDCache.cc b/src/mds/MDCache.cc index 0265d0c32b71..60b6d3aaf282 100644 --- a/src/mds/MDCache.cc +++ b/src/mds/MDCache.cc @@ -7804,14 +7804,13 @@ void MDCache::snaprealm_create(MDRequest *mdr, CInode *in) snapid_t seq; ::decode(seq, p); - SnapRealm t(this, in); - t.srnode.created = seq; - bufferlist snapbl; - ::encode(t, snapbl); + sr_t *newsnap = in->project_snaprealm(seq); + newsnap->seq = seq; + newsnap->last_created = seq; predirty_journal_parents(mut, &le->metablob, in, 0, PREDIRTY_PRIMARY); journal_cow_inode(mut, &le->metablob, in); - le->metablob.add_primary_dentry(in->get_projected_parent_dn(), true, in, 0, &snapbl); + le->metablob.add_primary_dentry(in->get_projected_parent_dn(), true, in); mds->mdlog->submit_entry(le, new C_MDC_snaprealm_create_finish(this, mdr, mut, in)); mds->mdlog->flush();