]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mon: implement MDSMonitor::get_store_prefixes
authorJohn Spray <john.spray@redhat.com>
Mon, 25 Sep 2017 09:44:28 +0000 (10:44 +0100)
committerNathan Cutler <ncutler@suse.com>
Wed, 8 Nov 2017 10:22:21 +0000 (11:22 +0100)
Fixes: http://tracker.ceph.com/issues/21534
Signed-off-by: John Spray <john.spray@redhat.com>
(cherry picked from commit a3c317b406c69b9d6a2d7df94806f4c308e6ee6a)
(cherry picked from commit 9d8e5d763b173247f95f0769fd52372a8a7a5371)
Signed-off-by: Joao Eduardo Luis <joao@suse.de>
(cherry picked from commit 9bd33914b8f1c676468db6b57e03b92bb6773e6b)

src/mon/MDSMonitor.cc
src/mon/MDSMonitor.h

index 32a80a7b8b16a84d3d783bd4eb3d83d9f0cc71ec..e34be99aed3ef73922fe5baf9d9871e333d64fae 100644 (file)
@@ -49,6 +49,10 @@ static ostream& _prefix(std::ostream *_dout, Monitor *mon, FSMap const& fsmap) {
                << ").mds e" << fsmap.get_epoch() << " ";
 }
 
+static const string MDS_METADATA_PREFIX("mds_metadata");
+static const string MDS_HEALTH_PREFIX("mds_health");
+
+
 /*
  * Specialized implementation of cmd_getval to allow us to parse
  * out strongly-typedef'd types
@@ -71,9 +75,6 @@ template<> bool cmd_getval(CephContext *cct, const cmdmap_t& cmdmap,
   return cmd_getval(cct, cmdmap, k, (int64_t&)val);
 }
 
-static const string MDS_METADATA_PREFIX("mds_metadata");
-
-
 // my methods
 
 void MDSMonitor::print_map(FSMap &m, int dbl)
@@ -89,6 +90,12 @@ void MDSMonitor::create_initial()
   dout(10) << "create_initial" << dendl;
 }
 
+void MDSMonitor::get_store_prefixes(std::set<string>& s)
+{
+  s.insert(service_name);
+  s.insert(MDS_METADATA_PREFIX);
+  s.insert(MDS_HEALTH_PREFIX);
+}
 
 void MDSMonitor::update_from_paxos(bool *need_bootstrap)
 {
index c14c9603943cc25c1a3699f70516f5f6b6f8d6d2..3d84f92a811fc6ec393fd348773942e7d2168f9c 100644 (file)
@@ -34,14 +34,13 @@ class MMDSLoadTargets;
 class MMDSMap;
 class FileSystemCommandHandler;
 
-#define MDS_HEALTH_PREFIX "mds_health"
-
 class MDSMonitor : public PaxosService {
  public:
   MDSMonitor(Monitor *mn, Paxos *p, string service_name);
 
   // service methods
   void create_initial() override;
+  void get_store_prefixes(std::set<string>& s) override;
   void update_from_paxos(bool *need_bootstrap) override;
   void init() override;
   void create_pending() override;