summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuel Just <sam.just@inktank.com>2013-05-22 14:37:42 -0700
committerSamuel Just <sam.just@inktank.com>2013-05-22 14:37:43 -0700
commit08c39b84308f17afef776e08c09be3faa2b9eab4 (patch)
tree3c13a1c491aab5fe8a8f0ce8ca2fd807bc5594ca
parent489cd5c441d865f48f40acf9d4d9181e0bcc7247 (diff)
downloadceph-08c39b84308f17afef776e08c09be3faa2b9eab4.tar.gz
ReplicatedPG::submit_push_complete don't remove the head object
The object would have had to have been removed already. With fd caching, this extra remove might check the wrong replay_guard since the fd caching mechanism assumes that between any operation on an hobject_t oid and a remove operation, all operations on that hobject_t must refer to the same inode. Signed-off-by: Samuel Just <sam.just@inktank.com>
-rw-r--r--src/osd/ReplicatedPG.cc1
1 files changed, 0 insertions, 1 deletions
diff --git a/src/osd/ReplicatedPG.cc b/src/osd/ReplicatedPG.cc
index 8f463098790..ab4da3ec314 100644
--- a/src/osd/ReplicatedPG.cc
+++ b/src/osd/ReplicatedPG.cc
@@ -5283,7 +5283,6 @@ void ReplicatedPG::submit_push_data(
void ReplicatedPG::submit_push_complete(ObjectRecoveryInfo &recovery_info,
ObjectStore::Transaction *t)
{
- remove_snap_mapped_object(*t, recovery_info.soid);
t->collection_move(coll, get_temp_coll(t), recovery_info.soid);
for (map<hobject_t, interval_set<uint64_t> >::const_iterator p =
recovery_info.clone_subset.begin();