From 6b2bf234b8d38e720685234a9b610df0306cbbf3 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Tue, 7 Jun 2011 11:25:39 -0700 Subject: [PATCH] mds: rename: fix oldin pop - make the pop match position with the project in prepare - don't pop on linkmerge, since we don't project in that case Signed-off-by: Sage Weil --- src/mds/Server.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mds/Server.cc b/src/mds/Server.cc index 4ea399faaf5f8..30801f1eba603 100644 --- a/src/mds/Server.cc +++ b/src/mds/Server.cc @@ -5338,6 +5338,8 @@ void Server::_rename_apply(MDRequest *mdr, CDentry *srcdn, CDentry *destdn, CDen } } else if (destdnl->is_remote()) { destdn->get_dir()->unlink_inode(destdn); + if (oldin->is_auth()) + oldin->pop_and_dirty_projected_inode(mdr->ls); } } @@ -5358,8 +5360,6 @@ void Server::_rename_apply(MDRequest *mdr, CDentry *srcdn, CDentry *destdn, CDen dout(10) << "merging remote onto primary link" << dendl; srcdn->get_dir()->unlink_inode(srcdn); } - if (destdnl->get_inode()->is_auth()) - destdnl->get_inode()->pop_and_dirty_projected_inode(mdr->ls); } else { if (linkmerge) { dout(10) << "merging primary onto remote link" << dendl; -- 2.39.5