From: Yunchuan Wen Date: Fri, 21 Aug 2015 06:38:21 +0000 (+0800) Subject: skip promote if flag set when doing proxy read X-Git-Tag: v9.1.0~301^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=9c325d2b119b048fbb32165ad8662a9ac5eee709;p=ceph.git skip promote if flag set when doing proxy read Signed-off-by: Yunchuan Wen Reviewed-by: Li Wang --- diff --git a/src/osd/ReplicatedPG.cc b/src/osd/ReplicatedPG.cc index fba7494ae0d3..eeb3f8453748 100644 --- a/src/osd/ReplicatedPG.cc +++ b/src/osd/ReplicatedPG.cc @@ -1954,9 +1954,12 @@ bool ReplicatedPG::maybe_handle_cache(OpRequestRef op, } // Promote too? - bool promoted = maybe_promote(obc, missing_oid, oloc, in_hit_set, - pool.info.min_read_recency_for_promote, - promote_op); + bool promoted = false; + if (!op->need_skip_promote()) { + promoted = maybe_promote(obc, missing_oid, oloc, in_hit_set, + pool.info.min_read_recency_for_promote, + promote_op); + } if (!promoted && !can_proxy_read) { // redirect the op if it's not proxied and not promoting do_cache_redirect(op);