From: Samuel Just Date: Wed, 21 Mar 2012 17:36:21 +0000 (-0700) Subject: FileStore: remove src on EEXIST during collection_move replay X-Git-Tag: v0.44.1~5 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=ec52eeb2ae1410775763c06fcd6d57fdd9542117;p=ceph.git FileStore: remove src on EEXIST during collection_move replay Signed-off-by: Samuel Just --- diff --git a/src/os/FileStore.cc b/src/os/FileStore.cc index f6025ab00a62..2a4032a19990 100644 --- a/src/os/FileStore.cc +++ b/src/os/FileStore.cc @@ -4275,7 +4275,7 @@ int FileStore::_collection_move(coll_t c, coll_t oldcid, const hobject_t& o) { dout(15) << "collection_move " << c << "/" << o << " from " << oldcid << "/" << o << dendl; int r = lfn_link(oldcid, c, o); - if (r == 0) + if (r == 0 || (replaying && r == -EEXIST)) r = lfn_unlink(oldcid, o); dout(10) << "collection_move " << c << "/" << o << " from " << oldcid << "/" << o << " = " << r << dendl; return r;