From d118e56f0b8a3c0d016dd33dc70fd6451f082cdb Mon Sep 17 00:00:00 2001 From: Zhiqiang Wang Date: Fri, 24 Apr 2015 19:31:31 +0800 Subject: [PATCH] osd/ReplicatedPG: need to queue op when avoiding dup promotion in maybe_handle_cache Need to queue the op before returning from maybe_handle_cache. Otherwise, this op is lost. Signed-off-by: Zhiqiang Wang --- src/osd/ReplicatedPG.cc | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/osd/ReplicatedPG.cc b/src/osd/ReplicatedPG.cc index 4c549a5fd3d3..b5e80d4b2276 100644 --- a/src/osd/ReplicatedPG.cc +++ b/src/osd/ReplicatedPG.cc @@ -1852,6 +1852,9 @@ bool ReplicatedPG::maybe_handle_cache(OpRequestRef op, // Avoid duplicate promotion if (obc.get() && obc->is_blocked()) { + if (!can_proxy_read) { + wait_for_blocked_object(obc->obs.oi.soid, op); + } return true; } -- 2.47.3