]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/osdc/Objecter.cc
import ceph quincy 17.2.6
[ceph.git] / ceph / src / osdc / Objecter.cc
index 0050489d663de965318bbb1779795d424951f425..e821b4ee00f0443a750726fe8d06d5dfbd0586eb 100644 (file)
@@ -193,6 +193,7 @@ class Objecter::RequestStateHook : public AdminSocketHook {
 public:
   explicit RequestStateHook(Objecter *objecter);
   int call(std::string_view command, const cmdmap_t& cmdmap,
+          const bufferlist&,
           Formatter *f,
           std::ostream& ss,
           cb::list& out) override;
@@ -1426,14 +1427,20 @@ void Objecter::emit_blocklist_events(const OSDMap &old_osd_map,
 
   std::set<entity_addr_t> old_set;
   std::set<entity_addr_t> new_set;
+  std::set<entity_addr_t> old_range_set;
+  std::set<entity_addr_t> new_range_set;
 
-  old_osd_map.get_blocklist(&old_set);
-  new_osd_map.get_blocklist(&new_set);
+  old_osd_map.get_blocklist(&old_set, &old_range_set);
+  new_osd_map.get_blocklist(&new_set, &new_range_set);
 
   std::set<entity_addr_t> delta_set;
   std::set_difference(
       new_set.begin(), new_set.end(), old_set.begin(), old_set.end(),
       std::inserter(delta_set, delta_set.begin()));
+  std::set_difference(
+      new_range_set.begin(), new_range_set.end(),
+      old_range_set.begin(), old_range_set.end(),
+      std::inserter(delta_set, delta_set.begin()));
   blocklist_events.insert(delta_set.begin(), delta_set.end());
 }
 
@@ -4701,6 +4708,7 @@ Objecter::RequestStateHook::RequestStateHook(Objecter *objecter) :
 
 int Objecter::RequestStateHook::call(std::string_view command,
                                     const cmdmap_t& cmdmap,
+                                    const bufferlist&,
                                     Formatter *f,
                                     std::ostream& ss,
                                     cb::list& out)