Hi Sage, This patch is buggy, please drop it from wip-mds. On 11/23/2012 12:52 AM, Yan, Zheng wrote: > From: "Yan, Zheng" <zheng.z.yan@xxxxxxxxx> > > When a null dentry is encountered, CDir::_commit_partial() adds > a OSD_TMAP_RM command to delete the dentry. But if the dentry is > new, the osd will not find the dentry when handling the command > and the tmap update operation will fail totally. > > This patch also makes sure dentries are properly marked as new > when preparing new dentries and exporting dentries. > > Signed-off-by: Yan, Zheng <zheng.z.yan@xxxxxxxxx> > --- SNIP > diff --git a/src/mds/Server.cc b/src/mds/Server.cc > index ec0d5d5..228fede 100644 > --- a/src/mds/Server.cc > +++ b/src/mds/Server.cc > @@ -1685,6 +1685,9 @@ CDentry* Server::prepare_null_dentry(MDRequest *mdr, CDir *dir, const string& dn > } > } > > + if (!dn->is_dirty()) > + dn->mark_new(); > + This should be something like 'else if (!dn->is_dirty())'. This issue has been fixed on the osd side, this patch is no longer needed. Regards Yan, Zheng > return dn; > } > > -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html