]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
osd/ReplicatedPG: remove redundant transient variables did_proxy_read
authorxie xingguo <xie.xingguo@zte.com.cn>
Mon, 23 May 2016 08:26:02 +0000 (16:26 +0800)
committerxie xingguo <xie.xingguo@zte.com.cn>
Tue, 24 May 2016 11:56:25 +0000 (19:56 +0800)
Because it is always set to true unconditionally.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
src/osd/ReplicatedPG.cc

index a82fab7d6edcb82fa652cab5aea793ea0fa0fcf2..beeb2c2b33fa62111f1b68adf49f6698610543f6 100644 (file)
@@ -2238,37 +2238,23 @@ ReplicatedPG::cache_result_t ReplicatedPG::maybe_handle_cache_detail(
       }
       return cache_result_t::HANDLED_PROXY;
     } else {
-      bool did_proxy_read = false;
       do_proxy_read(op);
-      did_proxy_read = true;
 
       // Avoid duplicate promotion
       if (obc.get() && obc->is_blocked()) {
-       if (!did_proxy_read) {
-         wait_for_blocked_object(obc->obs.oi.soid, op);
-       }
        if (promote_obc)
          *promote_obc = obc;
         return cache_result_t::BLOCKED_PROMOTE;
       }
 
       // Promote too?
-      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, promote_obc);
-      }
-      if (!promoted && !did_proxy_read) {
-       // redirect the op if it's not proxied and not promoting
-       do_cache_redirect(op);
-       return cache_result_t::HANDLED_REDIRECT;
-      } else if (did_proxy_read) {
-       return cache_result_t::HANDLED_PROXY;
-      } else {
-       assert(promoted);
-       return cache_result_t::BLOCKED_PROMOTE;
+        (void)maybe_promote(obc, missing_oid, oloc, in_hit_set,
+                            pool.info.min_read_recency_for_promote,
+                            promote_op, promote_obc);
       }
+
+      return cache_result_t::HANDLED_PROXY;
     }
     assert(0 == "unreachable");
     return cache_result_t::NOOP;