]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
msgr: promote SimpleMessenger::Policy to Messenger::Policy
authorSage Weil <sage.weil@dreamhost.com>
Sun, 19 Feb 2012 05:48:50 +0000 (21:48 -0800)
committerSage Weil <sage.weil@dreamhost.com>
Sun, 19 Feb 2012 06:12:26 +0000 (22:12 -0800)
This is part of the generic interface, not specific to the implementation.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
src/ceph_mds.cc
src/ceph_mon.cc
src/ceph_osd.cc
src/librados.cc
src/msg/Messenger.h
src/msg/SimpleMessenger.h

index de887716adfee1e5f40981ae8e73e4eb26030a18..657ace69b1c80c14a2a30da7a2438851f8adf4bd 100644 (file)
@@ -245,16 +245,16 @@ int main(int argc, const char **argv)
     CEPH_FEATURE_PGID64;
   uint64_t required =
     CEPH_FEATURE_OSDREPLYMUX;
-  messenger->set_default_policy(SimpleMessenger::Policy::client(supported, required));
+  messenger->set_default_policy(Messenger::Policy::client(supported, required));
   messenger->set_policy(entity_name_t::TYPE_MON,
-                       SimpleMessenger::Policy::client(supported,
-                                                       CEPH_FEATURE_UID |
-                                                       CEPH_FEATURE_PGID64));
+                       Messenger::Policy::client(supported,
+                                                 CEPH_FEATURE_UID |
+                                                 CEPH_FEATURE_PGID64));
   messenger->set_policy(entity_name_t::TYPE_MDS,
-                       SimpleMessenger::Policy::lossless_peer(supported,
-                                                              CEPH_FEATURE_UID));
+                       Messenger::Policy::lossless_peer(supported,
+                                                        CEPH_FEATURE_UID));
   messenger->set_policy(entity_name_t::TYPE_CLIENT,
-                       SimpleMessenger::Policy::stateful_server(supported, 0));
+                       Messenger::Policy::stateful_server(supported, 0));
 
   if (shadow != MDSMap::STATE_ONESHOT_REPLAY)
     global_init_daemonize(g_ceph_context, 0);
index 5b937741f741e8e448232e51fef8c43a0b038a06..8e97ee5b89d65191e660713d8e29e9a045d039fe 100644 (file)
@@ -404,15 +404,15 @@ int main(int argc, const char **argv)
     CEPH_FEATURE_NOSRCADDR |
     CEPH_FEATURE_MONCLOCKCHECK |
     CEPH_FEATURE_PGID64;
-  messenger->set_default_policy(SimpleMessenger::Policy::stateless_server(supported, 0));
+  messenger->set_default_policy(Messenger::Policy::stateless_server(supported, 0));
   messenger->set_policy(entity_name_t::TYPE_MON,
-                       SimpleMessenger::Policy::lossless_peer(supported,
-                                                              CEPH_FEATURE_UID |
-                                                              CEPH_FEATURE_PGID64));
+                       Messenger::Policy::lossless_peer(supported,
+                                                        CEPH_FEATURE_UID |
+                                                        CEPH_FEATURE_PGID64));
   messenger->set_policy(entity_name_t::TYPE_OSD,
-                       SimpleMessenger::Policy::stateless_server(supported,
-                                                                 CEPH_FEATURE_PGID64 |
-                                                                 CEPH_FEATURE_OSDENC));
+                       Messenger::Policy::stateless_server(supported,
+                                                           CEPH_FEATURE_PGID64 |
+                                                           CEPH_FEATURE_OSDENC));
   mon->init();
   messenger->wait();
 
index 25bf0b68aa15cea2e57ff427a6cf15b217c6e27e..a99cc7b99b3210162e21bcecd2e406cb69cd9753 100644 (file)
@@ -344,28 +344,28 @@ int main(int argc, const char **argv)
     CEPH_FEATURE_NOSRCADDR |
     CEPH_FEATURE_PGID64;
 
-  client_messenger->set_default_policy(SimpleMessenger::Policy::stateless_server(supported, 0));
+  client_messenger->set_default_policy(Messenger::Policy::stateless_server(supported, 0));
   client_messenger->set_policy(entity_name_t::TYPE_CLIENT,
-                              SimpleMessenger::Policy::stateless_server(supported, 0));
+                              Messenger::Policy::stateless_server(supported, 0));
   client_messenger->set_policy_throttler(entity_name_t::TYPE_CLIENT, &client_throttler);
   client_messenger->set_policy(entity_name_t::TYPE_MON,
-                               SimpleMessenger::Policy::client(supported,
-                                                               CEPH_FEATURE_UID |
-                                                              CEPH_FEATURE_PGID64 |
-                                                              CEPH_FEATURE_OSDENC));
+                               Messenger::Policy::client(supported,
+                                                        CEPH_FEATURE_UID |
+                                                        CEPH_FEATURE_PGID64 |
+                                                        CEPH_FEATURE_OSDENC));
   //try to poison pill any OSD connections on the wrong address
   client_messenger->set_policy(entity_name_t::TYPE_OSD,
-                              SimpleMessenger::Policy::stateless_server(0,0));
-
-  cluster_messenger->set_default_policy(SimpleMessenger::Policy::stateless_server(0, 0));
-  cluster_messenger->set_policy(entity_name_t::TYPE_MON, SimpleMessenger::Policy::client(0,0));
+                              Messenger::Policy::stateless_server(0,0));
+  
+  cluster_messenger->set_default_policy(Messenger::Policy::stateless_server(0, 0));
+  cluster_messenger->set_policy(entity_name_t::TYPE_MON, Messenger::Policy::client(0,0));
   cluster_messenger->set_policy(entity_name_t::TYPE_OSD,
-                               SimpleMessenger::Policy::lossless_peer(supported,
-                                                                      CEPH_FEATURE_UID |
-                                                                      CEPH_FEATURE_PGID64 |
-                                                                      CEPH_FEATURE_OSDENC));
+                               Messenger::Policy::lossless_peer(supported,
+                                                                CEPH_FEATURE_UID |
+                                                                CEPH_FEATURE_PGID64 |
+                                                                CEPH_FEATURE_OSDENC));
   cluster_messenger->set_policy(entity_name_t::TYPE_CLIENT,
-                               SimpleMessenger::Policy::stateless_server(0, 0));
+                               Messenger::Policy::stateless_server(0, 0));
 
   // Set up crypto, daemonize, etc.
   // Leave stderr open in case we need to report errors.
index e8e8bbadb0d737e35938aefa91ac3043e5e2d0a4..f771d659cebd04c9f1ff13d534db0b940c15bcdf 100644 (file)
@@ -944,7 +944,7 @@ int librados::RadosClient::connect()
   // require OSDREPLYMUX feature.  this means we will fail to talk to
   // old servers.  this is necessary because otherwise we won't know
   // how to decompose the reply data into its consituent pieces.
-  messenger->set_default_policy(SimpleMessenger::Policy::client(0, CEPH_FEATURE_OSDREPLYMUX));
+  messenger->set_default_policy(Messenger::Policy::client(0, CEPH_FEATURE_OSDREPLYMUX));
 
   ldout(cct, 1) << "starting msgr at " << messenger->get_ms_addr() << dendl;
 
index 5994dce72419aeb1a3bd2b50acb6cd8369f32971..2c500c58535b4a3808984acd8fa4cd22e23b60d3 100644 (file)
@@ -26,6 +26,7 @@ using namespace std;
 #include "common/Cond.h"
 #include "include/Context.h"
 #include "include/types.h"
+#include "include/ceph_features.h"
 
 #include <errno.h>
 #include <sstream>
@@ -35,6 +36,39 @@ class Timer;
 
 
 class Messenger {
+public:
+  struct Policy {
+    bool lossy;
+    bool server;
+    Throttle *throttler;
+
+    uint64_t features_supported;
+    uint64_t features_required;
+
+    Policy()
+      : lossy(false), server(false), throttler(NULL),
+       features_supported(CEPH_FEATURES_SUPPORTED_DEFAULT),
+       features_required(0) {}
+    Policy(bool l, bool s, uint64_t sup, uint64_t req)
+      : lossy(l), server(s), throttler(NULL),
+       features_supported(sup | CEPH_FEATURES_SUPPORTED_DEFAULT),
+       features_required(req) {}
+
+    static Policy stateful_server(uint64_t sup, uint64_t req) {
+      return Policy(false, true, sup, req);
+    }
+    static Policy stateless_server(uint64_t sup, uint64_t req) {
+      return Policy(true, true, sup, req);
+    }
+    static Policy lossless_peer(uint64_t sup, uint64_t req) {
+      return Policy(false, false, sup, req);
+    }
+    static Policy client(uint64_t sup, uint64_t req) {
+      return Policy(false, false, sup, req);
+    }
+  };
+
+
 private:
   list<Dispatcher*> dispatchers;
 
index 29b2cef7d4fcc7d3a76f846c4bd915ec0d57bdb6..f1d55bc6143792d4a13b3a3b29b339e7f88fd686 100644 (file)
@@ -17,7 +17,6 @@
 
 #include "include/types.h"
 #include "include/xlist.h"
-#include "include/ceph_features.h"
 
 #include <list>
 #include <map>
@@ -53,31 +52,6 @@ using namespace __gnu_cxx;
  */
 
 class SimpleMessenger : public Messenger {
-public:
-  struct Policy {
-    bool lossy;
-    bool server;
-    Throttle *throttler;
-
-    uint64_t features_supported;
-    uint64_t features_required;
-
-    Policy() :
-      lossy(false), server(false), throttler(NULL),
-      features_supported(CEPH_FEATURES_SUPPORTED_DEFAULT),
-      features_required(0) {}
-    Policy(bool l, bool s, uint64_t sup, uint64_t req) :
-      lossy(l), server(s), throttler(NULL),
-      features_supported(sup | CEPH_FEATURES_SUPPORTED_DEFAULT),
-      features_required(req) {}
-
-    static Policy stateful_server(uint64_t sup, uint64_t req) { return Policy(false, true, sup, req); }
-    static Policy stateless_server(uint64_t sup, uint64_t req) { return Policy(true, true, sup, req); }
-    static Policy lossless_peer(uint64_t sup, uint64_t req) { return Policy(false, false, sup, req); }
-    static Policy client(uint64_t sup, uint64_t req) { return Policy(false, false, sup, req); }
-  };
-
-
 public:
   void sigint();