]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
librados: let Objecter dispatch its own messages
authorSage Weil <sage@redhat.com>
Sun, 20 Jul 2014 15:51:25 +0000 (08:51 -0700)
committerJohn Spray <john.spray@redhat.com>
Mon, 25 Aug 2014 00:34:00 +0000 (01:34 +0100)
Signed-off-by: Sage Weil <sage@redhat.com>
src/librados/RadosClient.cc
src/librados/RadosClient.h

index c6c6ca30794688762e3aa5e9cb4e46feead1b547..aa4af4d24456a7d21173e303b17583e00255c09c 100644 (file)
@@ -246,7 +246,8 @@ int librados::RadosClient::connect()
   monclient.set_messenger(messenger);
 
   objecter->init();
-  messenger->add_dispatcher_head(this);
+  messenger->add_dispatcher_tail(objecter);
+  messenger->add_dispatcher_tail(this);
 
   messenger->start();
 
@@ -381,37 +382,18 @@ bool librados::RadosClient::_dispatch(Message *m)
 {
   switch (m->get_type()) {
   // OSD
-  case CEPH_MSG_OSD_OPREPLY:
-    objecter->handle_osd_op_reply(static_cast<MOSDOpReply*>(m));
-    break;
   case CEPH_MSG_OSD_MAP:
     lock.Lock();
-    objecter->handle_osd_map(static_cast<MOSDMap*>(m));
     pool_cache_rwl.get_write();
     osdmap_epoch = osdmap.get_epoch();
     pool_cache_rwl.unlock();
     cond.Signal();
     lock.Unlock();
     break;
-  case MSG_GETPOOLSTATSREPLY:
-    objecter->handle_get_pool_stats_reply(static_cast<MGetPoolStatsReply*>(m));
-    break;
 
   case CEPH_MSG_MDS_MAP:
     break;
 
-  case CEPH_MSG_STATFS_REPLY:
-    objecter->handle_fs_stats_reply(static_cast<MStatfsReply*>(m));
-    break;
-
-  case CEPH_MSG_POOLOP_REPLY:
-    objecter->handle_pool_op_reply(static_cast<MPoolOpReply*>(m));
-    break;
-
-  case MSG_COMMAND_REPLY:
-    objecter->handle_command_reply(static_cast<MCommandReply*>(m));
-    break;
-
   case CEPH_MSG_WATCH_NOTIFY:
     watch_notify(static_cast<MWatchNotify *>(m));
     break;
index 433969d002284766eaea13df4da0305c93fe0bf0..e608ced8d8e3096b01b23898e49205f4c48fc360 100755 (executable)
@@ -141,18 +141,6 @@ public:
   void get();
   bool put();
   void blacklist_self(bool set);
-
-private:
-  bool ms_can_fast_dispatch_any() const { return true; }
-  bool ms_can_fast_dispatch(Message *m) const {
-    switch (m->get_type()) {
-    case CEPH_MSG_OSD_OPREPLY:
-      return true;
-    default:
-      return false;
-    }
-  }
-  void ms_fast_dispatch(Message *m) { ms_dispatch(m); }
 };
 
 #endif