]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osd: tiering: proxy instead of redirect read in writeback mode when the
authorZhiqiang Wang <zhiqiang.wang@intel.com>
Wed, 26 Nov 2014 01:57:03 +0000 (09:57 +0800)
committerSage Weil <sage@redhat.com>
Sun, 11 Jan 2015 04:35:30 +0000 (20:35 -0800)
cache pool is full

To preserve read op order

Signed-off-by: Zhiqiang Wang <zhiqiang.wang@intel.com>
src/osd/ReplicatedPG.cc

index 6154bb0459676f7d394f17a04b29c7f520653c95..bec851d0b8920543711ad9648a5590ff7a5d598f 100644 (file)
@@ -1783,8 +1783,8 @@ bool ReplicatedPG::maybe_handle_cache(OpRequestRef op,
     if (agent_state &&
        agent_state->evict_mode == TierAgentState::EVICT_MODE_FULL) {
       if (!op->may_write() && !op->may_cache() && !write_ordered) {
-       dout(20) << __func__ << " cache pool full, redirecting read" << dendl;
-       do_cache_redirect(op, obc);
+       dout(20) << __func__ << " cache pool full, proxying read" << dendl;
+       do_proxy_read(op);
        return true;
       }
       dout(20) << __func__ << " cache pool full, waiting" << dendl;