]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
os/bluestore: add perf counter for omap_clear() op.
authorIgor Fedotov <ifedotov@suse.com>
Fri, 25 Sep 2020 01:30:01 +0000 (04:30 +0300)
committerIgor Fedotov <igor.fedotov@croit.io>
Mon, 6 Dec 2021 10:43:44 +0000 (13:43 +0300)
Signed-off-by: Igor Fedotov <ifedotov@suse.com>
src/os/bluestore/BlueStore.cc
src/os/bluestore/BlueStore.h

index c8242cb072f263c20ad527d1a3ac25c36219d949..5404150e15ae769811ad1310a1e9838044a0dbc0 100644 (file)
@@ -5192,6 +5192,8 @@ void BlueStore::_init_logger()
   b.add_time_avg(l_bluestore_omap_get_values_lat, "omap_get_values_lat",
     "Average omap get_values call latency",
     "ogvl", PerfCountersBuilder::PRIO_USEFUL);
+  b.add_time_avg(l_bluestore_omap_clear_lat, "omap_clear_lat",
+    "Average omap clear call latency");
   b.add_time_avg(l_bluestore_clist_lat, "clist_lat",
     "Average collection listing latency",
     "cl_l", PerfCountersBuilder::PRIO_USEFUL);
@@ -16033,6 +16035,8 @@ int BlueStore::_omap_clear(TransContext *txc,
                           OnodeRef& o)
 {
   dout(15) << __func__ << " " << c->cid << " " << o->oid << dendl;
+  auto t0 = mono_clock::now();
+
   int r = 0;
   if (o->onode.has_omap()) {
     o->flush();
@@ -16040,6 +16044,8 @@ int BlueStore::_omap_clear(TransContext *txc,
     o->onode.clear_omap_flag();
     txc->write_onode(o);
   }
+  logger->tinc(l_bluestore_omap_clear_lat, mono_clock::now() - t0);
+
   dout(10) << __func__ << " " << c->cid << " " << o->oid << " = " << r << dendl;
   return r;
 }
index affb2cb536a6ffcfe9fa32912498843df05f1090..4e32e9144cc5ade8aff61f61eee9bdb5a350d56c 100644 (file)
@@ -189,6 +189,7 @@ enum {
   l_bluestore_omap_next_lat,
   l_bluestore_omap_get_keys_lat,
   l_bluestore_omap_get_values_lat,
+  l_bluestore_omap_clear_lat,
   l_bluestore_clist_lat,
   l_bluestore_remove_lat,
   //****************************************