]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
crimson/mgr: Fix config show command 53954/head
authorAishwarya Mathuria <amathuri@redhat.com>
Wed, 28 Jun 2023 11:25:03 +0000 (16:55 +0530)
committerMatan Breizman <mbreizma@redhat.com>
Wed, 11 Oct 2023 11:44:56 +0000 (11:44 +0000)
Update the MMgrOpen message to include config_bl and config_defaults_bl

Fixes: https://tracker.ceph.com/issues/61846
Signed-off-by: Aishwarya Mathuria <amathuri@redhat.com>
(cherry picked from commit 249a6ddedb3840a91cc17708eba3a72f8b22d267)

src/crimson/common/config_proxy.h
src/crimson/mgr/client.cc
src/crimson/mgr/client.h

index e27db9b5bedf3d868de720f39efc579b7416fbe2..40130464018797836c4e1af77b6964cd309e1c35 100644 (file)
@@ -96,6 +96,15 @@ public:
     return values.get();
   }
 
+  void get_config_bl(uint64_t have_version,
+                    ceph::buffer::list *bl,
+                    uint64_t *got_version) {
+    get_config().get_config_bl(get_config_values(), have_version,
+                               bl, got_version);
+  }
+  void get_defaults_bl(ceph::buffer::list *bl) {
+    get_config().get_defaults_bl(get_config_values(), bl);
+  }
   // required by sharded<>
   seastar::future<> start();
   seastar::future<> stop() {
index 6e3d7cdd848c007970be328b8e2d5b6241499eb4..629c6ac03714f62e524d58e60950e8887a54b41b 100644 (file)
@@ -72,6 +72,8 @@ void Client::ms_handle_connect(crimson::net::ConnectionRef c)
       // ask for the mgrconfigure message
       auto m = crimson::make_message<MMgrOpen>();
       m->daemon_name = local_conf()->name.get_id();
+      local_conf().get_config_bl(0, &m->config_bl, &last_config_bl_version);
+      local_conf().get_defaults_bl(&m->config_defaults_bl);
       return conn->send(std::move(m));
     } else {
       return seastar::now();
index e8457543305681defdb7c7881bda2640e87512a3..0ce1d00876df0ada52187f1d8da9ca7a140d2070 100644 (file)
@@ -56,6 +56,7 @@ private:
   crimson::net::ConnectionRef conn;
   seastar::timer<seastar::lowres_clock> report_timer;
   crimson::common::Gated gate;
+  uint64_t last_config_bl_version = 0;
 };
 
 inline std::ostream& operator<<(std::ostream& out, const Client& client) {