From 750da11ad2249ea0fb309b54ffe9575ac1f38d3a Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Sat, 21 Dec 2013 23:01:56 -0800 Subject: [PATCH] osd/ReplicatedPG: clear whiteout on successful copy-from Signed-off-by: Sage Weil --- src/osd/ReplicatedPG.cc | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/osd/ReplicatedPG.cc b/src/osd/ReplicatedPG.cc index 0380e3ef00977..e02044653dee1 100644 --- a/src/osd/ReplicatedPG.cc +++ b/src/osd/ReplicatedPG.cc @@ -4860,6 +4860,13 @@ void ReplicatedPG::finish_copyfrom(OpContext *ctx) // CopyFromCallback fills this in for us obs.oi.user_version = ctx->user_at_version; + // cache: clear whiteout? + if (obs.oi.is_whiteout()) { + dout(10) << __func__ << " clearing whiteout on " << obs.oi.soid << dendl; + obs.oi.clear_flag(object_info_t::FLAG_WHITEOUT); + --ctx->delta_stats.num_whiteouts; + } + interval_set ch; if (obs.oi.size > 0) ch.insert(0, obs.oi.size); -- 2.39.5