]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
elector: make some more ElectionLogic members private
authorGreg Farnum <gfarnum@redhat.com>
Thu, 20 Jun 2019 17:44:20 +0000 (10:44 -0700)
committerGreg Farnum <gfarnum@redhat.com>
Mon, 19 Aug 2019 20:04:59 +0000 (13:04 -0700)
Signed-off-by: Greg Farnum <gfarnum@redhat.com>
src/mon/ElectionLogic.h
src/mon/Elector.cc
src/mon/Elector.h

index 974ee3fca39a7d6d4aec16be15adc691dc3db822..f5451194b924dcbfcfc357fa7c5ff844f0ba4b9d 100644 (file)
@@ -34,35 +34,37 @@ public:
   virtual void _start() = 0;
   virtual void _defer_to(int who) = 0;
   virtual void message_victory(const set<int>& quorum) = 0;
-  virtual bool is_current_member(int rank) = 0;
+  virtual bool is_current_member(int ) = 0;
   virtual ~ElectionOwner() {}
 };
 
 class ElectionLogic {
-public:
   ElectionOwner *elector;
   CephContext *cct;
   epoch_t epoch = 0;
+  int leader_acked;
+public:
   bool participating;
   bool electing_me;
   set<int> acked_me;
-  int leader_acked;
 
   ElectionLogic(ElectionOwner *e, CephContext *c) : elector(e), cct(c),
+                                                   leader_acked(-1),
                                                    participating(true),
-                                                   electing_me(false), leader_acked(-1) {}
+                                                   electing_me(false) {}
   void declare_standalone_victory();
   void start();
-  void defer(int who);
   void end_election_period();
   void receive_propose(epoch_t mepoch, int from);
   void receive_ack(int from, epoch_t from_epoch);
   bool receive_victory_claim(int from, epoch_t from_epoch);
+  epoch_t get_epoch() { return epoch; }
 
   
 private:
   void init();
   void bump_epoch(epoch_t e);
+  void defer(int who);
   void declare_victory();
 };
 
index a8ca4cd1efb82931d5a33eb732b09c3943e82463..e3eb3bd118cb8379dd06099835219960470abc61 100644 (file)
@@ -120,7 +120,7 @@ void Elector::_start()
 
 void Elector::_defer_to(int who)
 {
-  MMonElection *m = new MMonElection(MMonElection::OP_ACK, logic.epoch, mon->monmap);
+  MMonElection *m = new MMonElection(MMonElection::OP_ACK, get_epoch(), mon->monmap);
   m->mon_features = ceph::features::mon::get_supported();
   m->mon_release = ceph_release();
   mon->collect_metadata(&m->metadata);
@@ -192,7 +192,7 @@ void Elector::message_victory(const set<int>& quorum)
        p != quorum.end();
        ++p) {
     if (*p == mon->rank) continue;
-    MMonElection *m = new MMonElection(MMonElection::OP_VICTORY, logic.epoch,
+    MMonElection *m = new MMonElection(MMonElection::OP_VICTORY, get_epoch(),
                                       mon->monmap);
     m->quorum = quorum;
     m->quorum_features = cluster_features;
@@ -203,7 +203,7 @@ void Elector::message_victory(const set<int>& quorum)
   }
 
   // tell monitor
-  mon->win_election(logic.epoch, quorum,
+  mon->win_election(get_epoch(), quorum,
                     cluster_features, mon_features, min_mon_release,
                    metadata);
 }
@@ -257,7 +257,7 @@ void Elector::handle_ack(MonOpRequestRef op)
   dout(5) << "handle_ack from " << m->get_source() << dendl;
   int from = m->get_source().num();
 
-  ceph_assert(m->epoch == logic.epoch);
+  ceph_assert(m->epoch == get_epoch());
   uint64_t required_features = mon->get_required_features();
   if ((required_features ^ m->get_connection()->get_features()) &
       required_features) {
@@ -315,7 +315,7 @@ void Elector::handle_victory(MonOpRequestRef op)
     return;
   }
 
-  mon->lose_election(logic.epoch, m->quorum, from,
+  mon->lose_election(get_epoch(), m->quorum, from,
                      m->quorum_features, m->mon_features, m->mon_release);
 
   // cancel my timer
@@ -443,7 +443,7 @@ void Elector::dispatch(MonOpRequestRef op)
        return;
       }
 
-      if (em->epoch < logic.epoch) {
+      if (em->epoch < get_epoch()) {
        dout(5) << "old epoch, dropping" << dendl;
        break;
       }
index e25208a4fa038bedd56b71a2014f7e4319949a5e..e6c39d35d6d784d228abdefaf04bf3b42e13cda0 100644 (file)
@@ -368,7 +368,7 @@ class Elector : public ElectionOwner {
    *
    * @returns Our current epoch number
    */
-  epoch_t get_epoch() { return logic.epoch; }
+  epoch_t get_epoch() { return logic.get_epoch(); }
 
   void declare_standalone_victory() {
     logic.declare_standalone_victory();