]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mon/OSDMonitor: fix osd metadata update ordering 15068/head
authorSage Weil <sage@redhat.com>
Mon, 15 May 2017 13:34:11 +0000 (09:34 -0400)
committerSage Weil <sage@redhat.com>
Tue, 30 May 2017 01:34:29 +0000 (21:34 -0400)
Do not do both.

Signed-off-by: Sage Weil <sage@redhat.com>
src/mon/OSDMonitor.cc

index 55d459b3fac1939d5ed3e335505f1f52bea982d9..d94ee192e6f1832a0e7b95f0bbbf30a87bfff461 100644 (file)
@@ -2371,6 +2371,7 @@ bool OSDMonitor::prepare_boot(MonOpRequestRef op)
     bufferlist osd_metadata;
     ::encode(m->metadata, osd_metadata);
     pending_metadata[from] = osd_metadata;
+    pending_metadata_rm.erase(from);
 
     // adjust last clean unmount epoch?
     const osd_info_t& info = osdmap.get_info(from);
@@ -7694,6 +7695,7 @@ bool OSDMonitor::prepare_command_impl(MonOpRequestRef op,
          pending_inc.new_state[osd] = osdmap.get_state(osd);
           pending_inc.new_uuid[osd] = uuid_d();
          pending_metadata_rm.insert(osd);
+         pending_metadata.erase(osd);
          if (any) {
            ss << ", osd." << osd;
           } else {