]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
objectcacher: name them
authorSage Weil <sage.weil@dreamhost.com>
Sat, 14 Apr 2012 05:19:00 +0000 (22:19 -0700)
committerSage Weil <sage.weil@dreamhost.com>
Sat, 14 Apr 2012 05:19:00 +0000 (22:19 -0700)
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
src/client/Client.cc
src/librbd.cc
src/osdc/ObjectCacher.cc
src/osdc/ObjectCacher.h

index 7ff97a9dbc8b9d64fbc2ddb60842d724e67e9b37..986646f83218aab9c5cec7f9ca566ade3bfd50d3 100644 (file)
@@ -151,7 +151,7 @@ Client::Client(Messenger *m, MonClient *mc)
   objecter = new Objecter(cct, messenger, monclient, osdmap, client_lock, timer);
   objecter->set_client_incarnation(0);  // client always 0, for now.
   writeback_handler = new ObjecterWriteback(objecter);
-  objectcacher = new ObjectCacher(cct, *writeback_handler, client_lock,
+  objectcacher = new ObjectCacher(cct, "libcephfs", *writeback_handler, client_lock,
                                  client_flush_set_callback,    // all commit callback
                                  (void*)this);
   filer = new Filer(objecter);
index e4bf0228b55baa5aa55fa800ea8a16c3dc1ce684..fbcded73129f9ddce62e4f41c65ea20df95e811c 100644 (file)
@@ -103,7 +103,12 @@ namespace librbd {
        Mutex::Locker l(cache_lock);
        ldout(cct, 20) << "enabling writback caching..." << dendl;
        writeback_handler = new LibrbdWriteback(data_ctx, cache_lock);
-       object_cacher = new ObjectCacher(cct, *writeback_handler, cache_lock,
+       string ocname = string("librbd-") + data_ctx.get_pool_name() + string("/") + name;
+       if (snapname.length()) {
+         ocname += "@";
+         ocname += snapname;
+       }
+       object_cacher = new ObjectCacher(cct, name, *writeback_handler, cache_lock,
                                         NULL, NULL);
        object_set = new ObjectCacher::ObjectSet(NULL, data_ctx.get_id(), 0);
        object_cacher->start();
index 7d6c18d58cec7b69732e6b2176d49a65595a70b7..0d3e7e6602b95ae89386f98ed4b83372882f55b4 100644 (file)
@@ -15,6 +15,9 @@
 #define dout_subsys ceph_subsys_objectcacher
 #undef dout_prefix
 #define dout_prefix *_dout << "objectcacher.object(" << oid << ") "
+
+
+
 ObjectCacher::BufferHead *ObjectCacher::Object::split(BufferHead *left, loff_t off)
 {
   ldout(oc->cct, 20) << "split " << *left << " at " << off << dendl;
@@ -413,16 +416,16 @@ void ObjectCacher::Object::truncate(loff_t s)
 #define dout_prefix *_dout << "objectcacher "
 
 
-ObjectCacher::
-ObjectCacher(CephContext *cct_, WritebackHandler& wb, Mutex& l,
-             flush_set_callback_t flush_callback,
-             void *flush_callback_arg) :
-    perfcounter(NULL),
-    cct(cct_), writeback_handler(wb), lock(l),
+ObjectCacher::ObjectCacher(CephContext *cct_, string name, WritebackHandler& wb, Mutex& l,
+                          flush_set_callback_t flush_callback,
+                          void *flush_callback_arg)
+  : perfcounter(NULL),
+    cct(cct_), writeback_handler(wb), name(name), lock(l),
     flush_set_callback(flush_callback), flush_set_callback_arg(flush_callback_arg),
     flusher_stop(false), flusher_thread(this),
     stat_waiter(0),
-    stat_clean(0), stat_dirty(0), stat_rx(0), stat_tx(0), stat_missing(0) {
+    stat_clean(0), stat_dirty(0), stat_rx(0), stat_tx(0), stat_missing(0)
+{
   perf_start();
 }
 
@@ -441,7 +444,8 @@ ObjectCacher::~ObjectCacher()
 
 void ObjectCacher::perf_start()
 {
-  PerfCountersBuilder plb(cct, "objectcacher", l_objectcacher_first, l_objectcacher_last);
+  string n = "objectcacher-" + name;
+  PerfCountersBuilder plb(cct, n, l_objectcacher_first, l_objectcacher_last);
 
   plb.add_u64_counter(l_objectcacher_cache_ops_hit, "cache_ops_hit");
   plb.add_u64_counter(l_objectcacher_cache_ops_miss, "cache_ops_miss");
index a3fe74fce5bfd64fdea91cff3329fce7f7ccce4a..767f73c3abfdf13dbbd1a45df0e3362c55c69b77 100644 (file)
@@ -275,6 +275,7 @@ class ObjectCacher {
  private:
   WritebackHandler& writeback_handler;
 
+  string name;
   Mutex& lock;
   
   flush_set_callback_t flush_set_callback;
@@ -429,7 +430,7 @@ class ObjectCacher {
 
 
 
-  ObjectCacher(CephContext *cct_, WritebackHandler& wb, Mutex& l,
+  ObjectCacher(CephContext *cct_, string name, WritebackHandler& wb, Mutex& l,
               flush_set_callback_t flush_callback,
               void *flush_callback_arg);
   ~ObjectCacher();