From: Yan, Zheng Date: Wed, 26 Mar 2014 15:03:56 +0000 (+0800) Subject: mds: include authority of the overwrited inode in rename witnesses X-Git-Tag: v0.79~52^2~3 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=90b4e53c19f8f0d4719d5c34b6913ccc11f01531;p=ceph.git mds: include authority of the overwrited inode in rename witnesses Rename operation needs to adjust the overwrited inode's link count. Signed-off-by: Yan, Zheng --- diff --git a/src/mds/Server.cc b/src/mds/Server.cc index d2a43c85832..33870d1bc6e 100644 --- a/src/mds/Server.cc +++ b/src/mds/Server.cc @@ -5647,6 +5647,8 @@ void Server::handle_client_rename(MDRequest *mdr) else witnesses.insert(srcdn->authority().first); destdn->list_replicas(witnesses); + if (destdnl->is_remote() && !oldin->is_auth()) + witnesses.insert(oldin->authority().first); dout(10) << " witnesses " << witnesses << ", have " << mdr->more()->witnessed << dendl;