From 9d32ae46b2ad493789c3d1ebf09f14ea5509f1e9 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Mon, 2 Oct 2017 21:32:01 -0500 Subject: [PATCH] osd: drop useless OSDService::update_osd_stat() Signed-off-by: Sage Weil (cherry picked from commit a66f8bfe7d49f7d33ec027eeeb67870c610610db) --- src/osd/OSD.cc | 32 +++++++++++++------------------- src/osd/OSD.h | 3 +-- 2 files changed, 14 insertions(+), 21 deletions(-) diff --git a/src/osd/OSD.cc b/src/osd/OSD.cc index 49de7ba5030b3..7e6e7137c7677 100644 --- a/src/osd/OSD.cc +++ b/src/osd/OSD.cc @@ -809,23 +809,6 @@ osd_stat_t OSDService::set_osd_stat(const struct store_statfs_t &stbuf, } } -void OSDService::update_osd_stat(vector& hb_peers) -{ - // load osd stats first - struct store_statfs_t stbuf; - int r = osd->store->statfs(&stbuf); - if (r < 0) { - derr << "statfs() failed: " << cpp_strerror(r) << dendl; - return; - } - - auto new_stat = set_osd_stat(stbuf, hb_peers, osd->num_pgs); - dout(20) << "update_osd_stat " << new_stat << dendl; - assert(new_stat.kb); - float ratio = ((float)new_stat.kb_used) / ((float)new_stat.kb); - check_full_status(ratio); -} - bool OSDService::check_osdmap_full(const set &missing_on) { OSDMapRef osdmap = get_osdmap(); @@ -4713,13 +4696,24 @@ void OSD::heartbeat() dout(30) << "heartbeat checking stats" << dendl; - // refresh stats? + // refresh peer list and osd stats vector hb_peers; for (map::iterator p = heartbeat_peers.begin(); p != heartbeat_peers.end(); ++p) hb_peers.push_back(p->first); - service.update_osd_stat(hb_peers); + + // refresh osd stats + struct store_statfs_t stbuf; + int r = store->statfs(&stbuf); + assert(r == 0); + + auto new_stat = service.set_osd_stat(stbuf, hb_peers, get_num_pgs()); + dout(20) << __func__ << new_stat << dendl; + assert(new_stat.kb); + + float ratio = ((float)new_stat.kb_used) / ((float)new_stat.kb); + service.check_full_status(ratio); dout(5) << "heartbeat: " << service.get_osd_stat() << dendl; diff --git a/src/osd/OSD.h b/src/osd/OSD.h index a24febee61f09..bd98f15cf16b9 100644 --- a/src/osd/OSD.h +++ b/src/osd/OSD.h @@ -884,7 +884,6 @@ public: osd_stat_t osd_stat; uint32_t seq = 0; - void update_osd_stat(vector& hb_peers); osd_stat_t set_osd_stat(const struct store_statfs_t &stbuf, vector& hb_peers, int num_pgs); @@ -933,9 +932,9 @@ private: mutable int64_t injectfull = 0; s_names injectfull_state = NONE; float get_failsafe_full_ratio(); - void check_full_status(float ratio); bool _check_full(DoutPrefixProvider *dpp, s_names type) const; public: + void check_full_status(float ratio); bool check_failsafe_full(DoutPrefixProvider *dpp) const; bool check_full(DoutPrefixProvider *dpp) const; bool check_backfill_full(DoutPrefixProvider *dpp) const; -- 2.39.5