diff --git a/locator/abstract_replication_strategy.hh b/locator/abstract_replication_strategy.hh index 49812c43b8..e5bca829f3 100644 --- a/locator/abstract_replication_strategy.hh +++ b/locator/abstract_replication_strategy.hh @@ -87,7 +87,7 @@ public: snitch_ptr& snitch, const std::map& config_options, replication_strategy_type my_type); - virtual std::vector calculate_natural_endpoints(const token& search_token, token_metadata& tm) const = 0; + virtual std::vector calculate_natural_endpoints(const token& search_token, const token_metadata& tm) const = 0; virtual ~abstract_replication_strategy() {} static std::unique_ptr create_replication_strategy(const sstring& ks_name, const sstring& strategy_name, token_metadata& token_metadata, const std::map& config_options); static void validate_replication_strategy(const sstring& ks_name, diff --git a/locator/everywhere_replication_strategy.hh b/locator/everywhere_replication_strategy.hh index 8ca508a156..bfa9862b71 100644 --- a/locator/everywhere_replication_strategy.hh +++ b/locator/everywhere_replication_strategy.hh @@ -46,7 +46,7 @@ class everywhere_replication_strategy : public abstract_replication_strategy { public: everywhere_replication_strategy(const sstring& keyspace_name, token_metadata& token_metadata, snitch_ptr& snitch, const std::map& config_options); - virtual std::vector calculate_natural_endpoints(const token& search_token, token_metadata& tm) const override { + virtual std::vector calculate_natural_endpoints(const token& search_token, const token_metadata& tm) const override { return tm.get_all_endpoints(); } std::vector get_natural_endpoints(const token& search_token) override; diff --git a/locator/local_strategy.cc b/locator/local_strategy.cc index 3e6a0bfae6..8105ea0961 100644 --- a/locator/local_strategy.cc +++ b/locator/local_strategy.cc @@ -34,7 +34,7 @@ std::vector local_strategy::get_natural_endpoints(const token& t) return calculate_natural_endpoints(t, _token_metadata); } -std::vector local_strategy::calculate_natural_endpoints(const token& t, token_metadata& tm) const { +std::vector local_strategy::calculate_natural_endpoints(const token& t, const token_metadata& tm) const { return std::vector({utils::fb_utilities::get_broadcast_address()}); } diff --git a/locator/local_strategy.hh b/locator/local_strategy.hh index f39ef213f0..4bbf6c624f 100644 --- a/locator/local_strategy.hh +++ b/locator/local_strategy.hh @@ -36,7 +36,7 @@ using token = dht::token; class local_strategy : public abstract_replication_strategy { protected: - virtual std::vector calculate_natural_endpoints(const token& search_token, token_metadata& tm) const override; + virtual std::vector calculate_natural_endpoints(const token& search_token, const token_metadata& tm) const override; public: local_strategy(const sstring& keyspace_name, token_metadata& token_metadata, snitch_ptr& snitch, const std::map& config_options); virtual ~local_strategy() {}; diff --git a/locator/network_topology_strategy.cc b/locator/network_topology_strategy.cc index b188a0ddcd..a58893da8d 100644 --- a/locator/network_topology_strategy.cc +++ b/locator/network_topology_strategy.cc @@ -104,7 +104,7 @@ network_topology_strategy::network_topology_strategy( std::vector network_topology_strategy::calculate_natural_endpoints( - const token& search_token, token_metadata& tm) const { + const token& search_token, const token_metadata& tm) const { using endpoint_set = utils::sequenced_set; using endpoint_dc_rack_set = std::unordered_set; @@ -200,20 +200,20 @@ network_topology_strategy::calculate_natural_endpoints( // tracks the racks we have already placed replicas in endpoint_dc_rack_set seen_racks; - topology& tp = tm.get_topology(); + const topology& tp = tm.get_topology(); // // all endpoints in each DC, so we can check when we have exhausted all // the members of a DC // - std::unordered_map>& all_endpoints = tp.get_datacenter_endpoints(); // // all racks in a DC so we can check when we have exhausted all racks in a // DC // - std::unordered_map>>& racks = tp.get_datacenter_racks(); diff --git a/locator/network_topology_strategy.hh b/locator/network_topology_strategy.hh index 4dd34757b4..d04bfa57e1 100644 --- a/locator/network_topology_strategy.hh +++ b/locator/network_topology_strategy.hh @@ -76,7 +76,7 @@ protected: * progress in each DC, rack etc. */ virtual std::vector calculate_natural_endpoints( - const token& search_token, token_metadata& tm) const override; + const token& search_token, const token_metadata& tm) const override; virtual void validate_options() const override; diff --git a/locator/simple_strategy.cc b/locator/simple_strategy.cc index ebf06b6095..2cdc9480f0 100644 --- a/locator/simple_strategy.cc +++ b/locator/simple_strategy.cc @@ -42,7 +42,7 @@ simple_strategy::simple_strategy(const sstring& keyspace_name, token_metadata& t } } -std::vector simple_strategy::calculate_natural_endpoints(const token& t, token_metadata& tm) const { +std::vector simple_strategy::calculate_natural_endpoints(const token& t, const token_metadata& tm) const { const std::vector& tokens = tm.sorted_tokens(); if (tokens.empty()) { diff --git a/locator/simple_strategy.hh b/locator/simple_strategy.hh index af17187150..af7e9badde 100644 --- a/locator/simple_strategy.hh +++ b/locator/simple_strategy.hh @@ -30,7 +30,7 @@ namespace locator { class simple_strategy : public abstract_replication_strategy { protected: - virtual std::vector calculate_natural_endpoints(const token& search_token, token_metadata& tm) const override; + virtual std::vector calculate_natural_endpoints(const token& search_token, const token_metadata& tm) const override; public: simple_strategy(const sstring& keyspace_name, token_metadata& token_metadata, snitch_ptr& snitch, const std::map& config_options); virtual ~simple_strategy() {};