]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mgr/MetadataUpdate: add daemon_state.notify_update to contructor
authorJan Fajerski <jfajerski@suse.com>
Tue, 20 Mar 2018 08:16:55 +0000 (09:16 +0100)
committerJan Fajerski <jfajerski@suse.com>
Tue, 10 Apr 2018 09:49:22 +0000 (11:49 +0200)
Before updating metadata a call site should check if an update has
already been triggered. Adding the notify_update call to the constructor
makes sure the correct info for this check is present.

Signed-off-by: Jan Fajerski <jfajerski@suse.com>
src/mgr/Mgr.cc
src/mgr/Mgr.h

index 0c901a6933e2b259455eac6712d9f08b161c044e..be39b5753427b2baceebad9bbd14b20f35ec9379 100644 (file)
@@ -427,7 +427,6 @@ void Mgr::handle_osd_map()
       }
 
       if (update_meta) {
-        daemon_state.notify_updating(k);
         auto c = new MetadataUpdate(daemon_state, k);
         std::ostringstream cmd;
         cmd << "{\"prefix\": \"osd metadata\", \"id\": "
@@ -559,7 +558,6 @@ void Mgr::handle_fs_map(MFSMap* m)
     }
 
     if (update) {
-      daemon_state.notify_updating(k);
       auto c = new MetadataUpdate(daemon_state, k);
 
       // Older MDS daemons don't have addr in the metadata, so
index 173fe04a1d5426e1a7491a554140654c48d04375..1d424cddddfc15f4bc0d09272a862dbc57281160 100644 (file)
@@ -116,7 +116,10 @@ public:
   std::string outs;
 
   MetadataUpdate(DaemonStateIndex &daemon_state_, const DaemonKey &key_)
-    : daemon_state(daemon_state_), key(key_) {}
+    : daemon_state(daemon_state_), key(key_)
+  {
+      daemon_state.notify_updating(key);
+  }
 
   void set_default(const std::string &k, const std::string &v)
   {