From 94b60c5ef0612f3863f5b0457344a99b579efca2 Mon Sep 17 00:00:00 2001 From: Zhiqiang Wang Date: Thu, 29 Jan 2015 15:23:38 +0800 Subject: [PATCH] osd: don't log op stats for proxy read in the cache tier Signed-off-by: Zhiqiang Wang --- src/osd/ReplicatedPG.cc | 7 +++++-- src/osd/ReplicatedPG.h | 5 +++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/osd/ReplicatedPG.cc b/src/osd/ReplicatedPG.cc index f95d453a972d4..8836ed22debc6 100644 --- a/src/osd/ReplicatedPG.cc +++ b/src/osd/ReplicatedPG.cc @@ -2034,6 +2034,7 @@ void ReplicatedPG::finish_proxy_read(hobject_t oid, ceph_tid_t tid, int r) ctx->reply = new MOSDOpReply(m, 0, get_osdmap()->get_epoch(), 0, false); ctx->user_at_version = prdop->user_version; ctx->data_off = prdop->data_offset; + ctx->ignore_log_op_stats = true; complete_read_ctx(r, ctx); } @@ -5969,8 +5970,10 @@ void ReplicatedPG::complete_read_ctx(int result, OpContext *ctx) ctx->reply = NULL; if (result >= 0) { - log_op_stats(ctx); - publish_stats_to_osd(); + if (!ctx->ignore_log_op_stats) { + log_op_stats(ctx); + publish_stats_to_osd(); + } // on read, return the current object version if (ctx->obs) { diff --git a/src/osd/ReplicatedPG.h b/src/osd/ReplicatedPG.h index 0b0adf5e53cd9..28707331f7d75 100644 --- a/src/osd/ReplicatedPG.h +++ b/src/osd/ReplicatedPG.h @@ -478,6 +478,7 @@ public: bool undirty; // user explicitly un-dirtying this object bool cache_evict; ///< true if this is a cache eviction bool ignore_cache; ///< true if IGNORE_CACHE flag is set + bool ignore_log_op_stats; // don't log op stats // side effects list > watch_connects; ///< new watch + will_ping flag @@ -592,7 +593,7 @@ public: snapset(0), new_obs(obs->oi, obs->exists), modify(false), user_modify(false), undirty(false), cache_evict(false), - ignore_cache(false), + ignore_cache(false), ignore_log_op_stats(false), bytes_written(0), bytes_read(0), user_at_version(0), current_osd_subop_num(0), op_t(NULL), @@ -615,7 +616,7 @@ public: vector& _ops, ReplicatedPG *_pg) : op(_op), reqid(_reqid), ops(_ops), obs(NULL), snapset(0), modify(false), user_modify(false), undirty(false), cache_evict(false), - ignore_cache(false), + ignore_cache(false), ignore_log_op_stats(false), bytes_written(0), bytes_read(0), user_at_version(0), current_osd_subop_num(0), op_t(NULL), -- 2.39.5