]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osdc/Objecter: take Finisher ref from creator
authorSage Weil <sage@redhat.com>
Fri, 14 Nov 2014 22:47:05 +0000 (14:47 -0800)
committerSage Weil <sage@redhat.com>
Thu, 4 Dec 2014 18:34:05 +0000 (10:34 -0800)
Only needed for watch/notify users, so most can pass NULL.

Signed-off-by: Sage Weil <sage@redhat.com>
src/client/Client.cc
src/librados/RadosClient.cc
src/mds/MDS.cc
src/osd/OSD.cc
src/osdc/Objecter.cc
src/osdc/Objecter.h
src/test/mon/test_mon_workloadgen.cc
src/tools/cephfs/MDSUtility.cc

index 5cd6e861c30c0a170b22e8e9147902e606e26322..dc47cd54d4409e7a7b1fc00196807f2d52a84406 100644 (file)
@@ -201,7 +201,7 @@ Client::Client(Messenger *m, MonClient *mc)
 
   // osd interfaces
   mdsmap = new MDSMap;
-  objecter = new Objecter(cct, messenger, monclient,
+  objecter = new Objecter(cct, messenger, monclient, NULL,
                          0, 0);
   objecter->set_client_incarnation(0);  // client always 0, for now.
   writeback_handler = new ObjecterWriteback(objecter, &objecter_finisher,
index c2e572e436c219a5356848d877e97b68020b0f80..a6b292e516aed73c03b8a21c3fe8eb73690475b4 100644 (file)
@@ -224,6 +224,7 @@ int librados::RadosClient::connect()
 
   err = -ENOMEM;
   objecter = new Objecter(cct, messenger, &monclient,
+                         &finisher,
                          cct->_conf->rados_mon_op_timeout,
                          cct->_conf->rados_osd_op_timeout);
   if (!objecter)
index 460dd5b668262fdecd220a707bacb50280e52cbc..9ea2e4a98718ea1b6dc55a3e3d57f1802217d03e 100644 (file)
@@ -126,7 +126,7 @@ MDS::MDS(const std::string &n, Messenger *m, MonClient *mc) :
 
   mdsmap = new MDSMap;
 
-  objecter = new Objecter(m->cct, messenger, monc, 0, 0);
+  objecter = new Objecter(m->cct, messenger, monc, NULL, 0, 0);
   objecter->unset_honor_osdmap_full();
 
   filer = new Filer(objecter, &finisher);
index f1c28457cb6a3737763ca9d90d07e5e2b10525f1..216008980199b8a98077adde77b377386c88b667 100644 (file)
@@ -213,7 +213,7 @@ OSDService::OSDService(OSD *osd) :
   agent_stop_flag(false),
   agent_timer_lock("OSD::agent_timer_lock"),
   agent_timer(osd->client_messenger->cct, agent_timer_lock),
-  objecter(new Objecter(osd->client_messenger->cct, osd->objecter_messenger, osd->monc, 0, 0)),
+  objecter(new Objecter(osd->client_messenger->cct, osd->objecter_messenger, osd->monc, NULL, 0, 0)),
   objecter_finisher(osd->client_messenger->cct),
   watch_lock("OSD::watch_lock"),
   watch_timer(osd->client_messenger->cct, watch_lock),
index 8341264708d6971c7ff8facb907eb133085c8b6c..6833dc51c4ab96aff170b5b0e0ad914989d7c97c 100644 (file)
@@ -44,6 +44,7 @@
 
 #include "common/config.h"
 #include "common/perf_counters.h"
+#include "common/Finisher.h"
 #include "include/str_list.h"
 #include "common/errno.h"
 
index 21d18d64b6a9bd31e49b0831fc74f1d11e910587..8e207ab8e3e72fab74113c5c9cd9e3504e195e11 100644 (file)
@@ -37,6 +37,7 @@ class Messenger;
 class OSDMap;
 class MonClient;
 class Message;
+class Finisher;
 
 class MPoolOpReply;
 
@@ -1001,6 +1002,7 @@ public:
 public:
   Messenger *messenger;
   MonClient *monc;
+  Finisher *finisher;
 private:
   OSDMap    *osdmap;
 public:
@@ -1729,10 +1731,11 @@ public:
 
  public:
   Objecter(CephContext *cct_, Messenger *m, MonClient *mc,
+          Finisher *fin,
           double mon_timeout,
           double osd_timeout) :
     Dispatcher(cct),
-    messenger(m), monc(mc),
+    messenger(m), monc(mc), finisher(fin),
     osdmap(new OSDMap),
     cct(cct_),
     initialized(0),
index a09676ef6d05d5a7fd0823cbd03951adcd53a66e..a5a8afb6a7b18d9919eaea243cb7481d2f3aa1d1 100644 (file)
@@ -253,7 +253,7 @@ class ClientStub : public TestStub
     dout(10) << "ClientStub::" << __func__ << " starting messenger at "
            << messenger->get_myaddr() << dendl;
 
-    objecter.reset(new Objecter(cct, messenger.get(), &monc, 0, 0));
+    objecter.reset(new Objecter(cct, messenger.get(), &monc, NULL, 0, 0));
     assert(objecter.get() != NULL);
     objecter->set_balanced_budget();
 
index dda915042481c21c507ea3385eb95b2e4e61f5c5..53fb4912548fc373b62be7dd66aa98e85f370aa8 100644 (file)
@@ -28,7 +28,7 @@ MDSUtility::MDSUtility() :
   monc = new MonClient(g_ceph_context);
   messenger = Messenger::create(g_ceph_context, entity_name_t::CLIENT(), "mds", getpid());
   mdsmap = new MDSMap();
-  objecter = new Objecter(g_ceph_context, messenger, monc, 0, 0);
+  objecter = new Objecter(g_ceph_context, messenger, monc, NULL, 0, 0);
 }