locator: token_metadata: drop update_host_id() function that does nothing now
This commit is contained in:
@@ -949,11 +949,6 @@ token_metadata::debug_show() const {
|
||||
_impl->debug_show();
|
||||
}
|
||||
|
||||
void
|
||||
token_metadata::update_host_id(const host_id& host_id, inet_address endpoint) {
|
||||
// Do nothing for now. Remove later.
|
||||
}
|
||||
|
||||
std::unordered_set<host_id>
|
||||
token_metadata::get_host_ids() const {
|
||||
return _impl->get_host_ids();
|
||||
|
||||
@@ -227,15 +227,6 @@ public:
|
||||
const topology& get_topology() const;
|
||||
void debug_show() const;
|
||||
|
||||
/**
|
||||
* Store an end-point to host ID mapping. Each ID must be unique, and
|
||||
* cannot be changed after the fact.
|
||||
*
|
||||
* @param hostId
|
||||
* @param endpoint
|
||||
*/
|
||||
void update_host_id(const locator::host_id& host_id, inet_address endpoint);
|
||||
|
||||
/** Return the unique host ID for an end-point. */
|
||||
host_id get_host_id(inet_address endpoint) const;
|
||||
|
||||
|
||||
@@ -420,12 +420,9 @@ future<storage_service::nodes_to_notify_after_sync> storage_service::sync_raft_t
|
||||
const auto& am =_address_map;
|
||||
const auto& t = _topology_state_machine._topology;
|
||||
|
||||
auto update_topology = [&] (locator::host_id id, std::optional<inet_address> ip, const replica_state& rs) {
|
||||
auto update_topology = [&] (locator::host_id id, const replica_state& rs) {
|
||||
tmptr->update_topology(id, locator::endpoint_dc_rack{rs.datacenter, rs.rack},
|
||||
to_topology_node_state(rs.state), rs.shard_count);
|
||||
if (ip) {
|
||||
tmptr->update_host_id(id, *ip);
|
||||
}
|
||||
};
|
||||
|
||||
using host_id_to_ip_map_t = std::unordered_map<locator::host_id, gms::inet_address>;
|
||||
@@ -466,7 +463,7 @@ future<storage_service::nodes_to_notify_after_sync> storage_service::sync_raft_t
|
||||
}
|
||||
|
||||
if (t.left_nodes_rs.find(id) != t.left_nodes_rs.end()) {
|
||||
update_topology(host_id, std::nullopt, t.left_nodes_rs.at(id));
|
||||
update_topology(host_id, t.left_nodes_rs.at(id));
|
||||
}
|
||||
|
||||
// However if we do that, we need to also implement unbanning a node and do it if `removenode` is aborted.
|
||||
@@ -524,7 +521,7 @@ future<storage_service::nodes_to_notify_after_sync> storage_service::sync_raft_t
|
||||
co_await remove_ip(it->second, host_id, false);
|
||||
}
|
||||
}
|
||||
update_topology(host_id, ip, rs);
|
||||
update_topology(host_id, rs);
|
||||
co_await tmptr->update_normal_tokens(rs.ring.value().tokens, host_id);
|
||||
};
|
||||
|
||||
@@ -551,7 +548,7 @@ future<storage_service::nodes_to_notify_after_sync> storage_service::sync_raft_t
|
||||
// Save ip -> id mapping in peers table because we need it on restart, but do not save tokens until owned
|
||||
sys_ks_futures.push_back(_sys_ks.local().update_peer_info(*ip, host_id, {}));
|
||||
}
|
||||
update_topology(host_id, ip, rs);
|
||||
update_topology(host_id, rs);
|
||||
if (_topology_state_machine._topology.normal_nodes.empty()) {
|
||||
// This is the first node in the cluster. Insert the tokens as normal to the token ring early
|
||||
// so we can perform writes to regular 'distributed' tables during the bootstrap procedure
|
||||
@@ -579,7 +576,7 @@ future<storage_service::nodes_to_notify_after_sync> storage_service::sync_raft_t
|
||||
co_await process_normal_node(id, rs);
|
||||
break;
|
||||
}
|
||||
update_topology(host_id, ip, rs);
|
||||
update_topology(host_id, rs);
|
||||
co_await tmptr->update_normal_tokens(rs.ring.value().tokens, host_id);
|
||||
tmptr->add_leaving_endpoint(host_id);
|
||||
co_await update_topology_change_info(tmptr, ::format("{} {}/{}", rs.state, id, ip));
|
||||
@@ -592,7 +589,7 @@ future<storage_service::nodes_to_notify_after_sync> storage_service::sync_raft_t
|
||||
tmptr->update_topology(replaced_host_id, std::nullopt, locator::node::state::being_replaced);
|
||||
tmptr->add_replacing_endpoint(replaced_host_id, host_id);
|
||||
if (rs.ring.has_value()) {
|
||||
update_topology(host_id, ip, rs);
|
||||
update_topology(host_id, rs);
|
||||
co_await update_topology_change_info(tmptr, ::format("replacing {}/{} by {}/{}", replaced_id, existing_ip.value_or(gms::inet_address{}), id, ip));
|
||||
}
|
||||
}
|
||||
@@ -1551,7 +1548,6 @@ future<> storage_service::join_topology(sharded<db::system_distributed_keyspace>
|
||||
tmptr->update_topology(tmptr->get_my_id(), std::nullopt, locator::node::state::replacing);
|
||||
tmptr->update_topology(ri->host_id, std::move(ri->dc_rack), locator::node::state::being_replaced);
|
||||
co_await tmptr->update_normal_tokens(bootstrap_tokens, ri->host_id);
|
||||
tmptr->update_host_id(ri->host_id, *replace_address);
|
||||
tmptr->add_replacing_endpoint(ri->host_id, tmptr->get_my_id());
|
||||
|
||||
replaced_host_id = ri->host_id;
|
||||
@@ -1561,7 +1557,6 @@ future<> storage_service::join_topology(sharded<db::system_distributed_keyspace>
|
||||
// therefore we need to "inject" their state here after we
|
||||
// learn about them in the shadow round initiated in `prepare_replacement_info`.
|
||||
for (const auto& [host_id, st] : ri->ignore_nodes) {
|
||||
tmptr->update_host_id(host_id, st.endpoint);
|
||||
if (st.opt_dc_rack) {
|
||||
tmptr->update_topology(host_id, st.opt_dc_rack, locator::node::state::normal);
|
||||
}
|
||||
@@ -2314,7 +2309,6 @@ future<> storage_service::handle_state_bootstrap(inet_address endpoint, gms::per
|
||||
}
|
||||
tmptr->update_topology(host_id, get_dc_rack_for(host_id), locator::node::state::bootstrapping);
|
||||
tmptr->add_bootstrap_tokens(tokens, host_id);
|
||||
tmptr->update_host_id(host_id, endpoint);
|
||||
|
||||
co_await update_topology_change_info(tmptr, ::format("handle_state_bootstrap {}", endpoint));
|
||||
co_await replicate_to_all_cores(std::move(tmptr));
|
||||
@@ -2382,8 +2376,6 @@ future<> storage_service::handle_state_normal(inet_address endpoint, gms::permit
|
||||
|
||||
slogger.warn("Host ID collision for {} between {} and {}; {} is the new owner", host_id, *existing, endpoint, endpoint);
|
||||
do_remove_node(*existing);
|
||||
slogger.info("Set host_id={} to be owned by node={}, existing={}", host_id, endpoint, *existing);
|
||||
tmptr->update_host_id(host_id, endpoint);
|
||||
} else {
|
||||
// The new IP has smaller generation than the existing one,
|
||||
// we are going to remove it, so we add it to the endpoints_to_remove.
|
||||
@@ -2434,8 +2426,6 @@ future<> storage_service::handle_state_normal(inet_address endpoint, gms::permit
|
||||
_normal_state_handled_on_boot.insert(endpoint);
|
||||
co_return;
|
||||
}
|
||||
slogger.info("Set host_id={} to be owned by node={}", host_id, endpoint);
|
||||
tmptr->update_host_id(host_id, endpoint);
|
||||
}
|
||||
|
||||
// Tokens owned by the handled endpoint.
|
||||
@@ -2643,7 +2633,6 @@ future<> storage_service::on_alive(gms::inet_address endpoint, gms::endpoint_sta
|
||||
auto tmlock = co_await get_token_metadata_lock();
|
||||
auto tmptr = co_await get_mutable_token_metadata_ptr();
|
||||
const auto dc_rack = get_dc_rack_for(host_id);
|
||||
tmptr->update_host_id(host_id, endpoint);
|
||||
tmptr->update_topology(host_id, dc_rack);
|
||||
co_await replicate_to_all_cores(std::move(tmptr));
|
||||
}
|
||||
@@ -3047,7 +3036,6 @@ future<> storage_service::join_cluster(sharded<db::system_distributed_keyspace>&
|
||||
slogger.debug("Loaded tokens: endpoint={}/{} dc={} rack={} tokens={}", host_id, st.endpoint, dc_rack.dc, dc_rack.rack, st.tokens);
|
||||
tmptr->update_topology(host_id, dc_rack, locator::node::state::normal);
|
||||
co_await tmptr->update_normal_tokens(st.tokens, host_id);
|
||||
tmptr->update_host_id(host_id, st.endpoint);
|
||||
// gossiping hasn't started yet
|
||||
// so no need to lock the endpoint
|
||||
co_await _gossiper.add_saved_endpoint(host_id, st, gms::null_permit_id);
|
||||
@@ -4567,7 +4555,6 @@ future<node_ops_cmd_response> storage_service::node_ops_cmd_handler(gms::inet_ad
|
||||
// In handle_state_normal we'll remap the IP to the new host_id.
|
||||
tmptr->update_topology(existing_node_id, std::nullopt, locator::node::state::being_replaced);
|
||||
tmptr->update_topology(replacing_node_id, get_dc_rack_for(replacing_node_id), locator::node::state::replacing);
|
||||
tmptr->update_host_id(replacing_node_id, replacing_node);
|
||||
tmptr->add_replacing_endpoint(existing_node_id, replacing_node_id);
|
||||
return make_ready_future<>();
|
||||
}).get();
|
||||
@@ -4631,7 +4618,6 @@ future<node_ops_cmd_response> storage_service::node_ops_cmd_handler(gms::inet_ad
|
||||
const auto dc_rack = get_dc_rack_for(host_id);
|
||||
slogger.info("bootstrap[{}]: Added node={}/{} as bootstrap, coordinator={}/{}",
|
||||
req.ops_uuid, endpoint, host_id, coordinator, *coordinator_host_id);
|
||||
tmptr->update_host_id(host_id, endpoint);
|
||||
tmptr->update_topology(host_id, dc_rack, locator::node::state::bootstrapping);
|
||||
tmptr->add_bootstrap_tokens(tokens, host_id);
|
||||
}
|
||||
|
||||
@@ -215,9 +215,6 @@ SEASTAR_THREAD_TEST_CASE(test_load_sketch) {
|
||||
});
|
||||
|
||||
stm.mutate_token_metadata([&] (token_metadata& tm) {
|
||||
tm.update_host_id(host1, ip1);
|
||||
tm.update_host_id(host2, ip2);
|
||||
tm.update_host_id(host3, ip3);
|
||||
tm.update_topology(host1, locator::endpoint_dc_rack::default_location, node::state::normal, node1_shard_count);
|
||||
tm.update_topology(host2, locator::endpoint_dc_rack::default_location, node::state::normal, node2_shard_count);
|
||||
tm.update_topology(host3, locator::endpoint_dc_rack::default_location, node::state::normal, node3_shard_count);
|
||||
|
||||
@@ -485,7 +485,6 @@ SEASTAR_THREAD_TEST_CASE(NetworkTopologyStrategy_tablets_test) {
|
||||
std::unordered_set<token> tokens;
|
||||
tokens.insert(token{tests::d2t(ring_point / ring_points.size())});
|
||||
topo.add_node(id, make_endpoint_dc_rack(endpoint), locator::node::state::normal, shard_count);
|
||||
tm.update_host_id(id, endpoint);
|
||||
co_await tm.update_normal_tokens(std::move(tokens), id);
|
||||
}
|
||||
}).get();
|
||||
@@ -577,7 +576,6 @@ static void test_random_balancing(sharded<snitch_ptr>& snitch, gms::inet_address
|
||||
std::unordered_set<token> tokens;
|
||||
tokens.insert(token{tests::d2t(ring_point / ring_points.size())});
|
||||
topo.add_node(id, make_endpoint_dc_rack(endpoint), locator::node::state::normal, shard_count);
|
||||
tm.update_host_id(id, endpoint);
|
||||
co_await tm.update_normal_tokens(std::move(tokens), id);
|
||||
}
|
||||
}).get();
|
||||
@@ -1115,7 +1113,6 @@ SEASTAR_THREAD_TEST_CASE(test_topology_tracks_local_node) {
|
||||
|
||||
auto host1 = host_id(utils::make_random_uuid());
|
||||
auto host2 = host_id(utils::make_random_uuid());
|
||||
auto host3 = host_id(utils::make_random_uuid());
|
||||
|
||||
auto ip1_dc_rack = endpoint_dc_rack{ "dc1", "rack_ip1" };
|
||||
auto ip1_dc_rack_v2 = endpoint_dc_rack{ "dc1", "rack_ip1_v2" };
|
||||
@@ -1134,8 +1131,6 @@ SEASTAR_THREAD_TEST_CASE(test_topology_tracks_local_node) {
|
||||
BOOST_REQUIRE(stm.get()->get_topology().get_location() == ip1_dc_rack);
|
||||
|
||||
stm.mutate_token_metadata([&] (token_metadata& tm) {
|
||||
tm.update_host_id(host2, ip2);
|
||||
tm.update_host_id(host1, ip1); // this_node added last on purpose
|
||||
// Need to move to non left or none state in order to be indexed by ip
|
||||
tm.update_topology(host1, {}, locator::node::state::normal);
|
||||
tm.update_topology(host2, {}, locator::node::state::normal);
|
||||
@@ -1159,7 +1154,6 @@ SEASTAR_THREAD_TEST_CASE(test_topology_tracks_local_node) {
|
||||
|
||||
stm.mutate_token_metadata([&] (token_metadata& tm) {
|
||||
tm.remove_endpoint(host1);
|
||||
tm.update_host_id(host3, ip3);
|
||||
return make_ready_future<>();
|
||||
}).get();
|
||||
|
||||
|
||||
@@ -773,9 +773,6 @@ SEASTAR_TEST_CASE(test_get_shard) {
|
||||
tablet_id tid1(0);
|
||||
|
||||
stm.mutate_token_metadata([&] (token_metadata& tm) {
|
||||
tm.update_host_id(h1, ip1);
|
||||
tm.update_host_id(h2, ip2);
|
||||
tm.update_host_id(h3, ip3);
|
||||
tm.update_topology(h1, locator::endpoint_dc_rack::default_location, node::state::normal, shard_count);
|
||||
tm.update_topology(h2, locator::endpoint_dc_rack::default_location, node::state::normal, shard_count);
|
||||
tm.update_topology(h3, locator::endpoint_dc_rack::default_location, node::state::normal, shard_count);
|
||||
@@ -1515,9 +1512,6 @@ SEASTAR_THREAD_TEST_CASE(test_load_balancing_with_empty_node) {
|
||||
});
|
||||
|
||||
stm.mutate_token_metadata([&] (token_metadata& tm) -> future<> {
|
||||
tm.update_host_id(host1, ip1);
|
||||
tm.update_host_id(host2, ip2);
|
||||
tm.update_host_id(host3, ip3);
|
||||
tm.update_topology(host1, locator::endpoint_dc_rack::default_location, node::state::normal, shard_count);
|
||||
tm.update_topology(host2, locator::endpoint_dc_rack::default_location, node::state::normal, shard_count);
|
||||
tm.update_topology(host3, locator::endpoint_dc_rack::default_location, node::state::normal, shard_count);
|
||||
@@ -1616,9 +1610,6 @@ SEASTAR_THREAD_TEST_CASE(test_load_balancing_with_skiplist) {
|
||||
});
|
||||
|
||||
stm.mutate_token_metadata([&] (token_metadata& tm) {
|
||||
tm.update_host_id(host1, ip1);
|
||||
tm.update_host_id(host2, ip2);
|
||||
tm.update_host_id(host3, ip3);
|
||||
tm.update_topology(host1, locator::endpoint_dc_rack::default_location, node::state::normal, shard_count);
|
||||
tm.update_topology(host2, locator::endpoint_dc_rack::default_location, node::state::normal, shard_count);
|
||||
tm.update_topology(host3, locator::endpoint_dc_rack::default_location, node::state::normal, shard_count);
|
||||
@@ -1707,9 +1698,6 @@ SEASTAR_THREAD_TEST_CASE(test_decommission_rf_met) {
|
||||
stm.mutate_token_metadata([&](token_metadata& tm) -> future<> {
|
||||
const unsigned shard_count = 2;
|
||||
|
||||
tm.update_host_id(host1, ip1);
|
||||
tm.update_host_id(host2, ip2);
|
||||
tm.update_host_id(host3, ip3);
|
||||
tm.update_topology(host1, locator::endpoint_dc_rack::default_location, node::state::normal, shard_count);
|
||||
tm.update_topology(host2, locator::endpoint_dc_rack::default_location, node::state::normal, shard_count);
|
||||
tm.update_topology(host3, locator::endpoint_dc_rack::default_location, node::state::being_decommissioned,
|
||||
@@ -1807,10 +1795,6 @@ SEASTAR_THREAD_TEST_CASE(test_table_creation_during_decommission) {
|
||||
const unsigned shard_count = 1;
|
||||
|
||||
stm.mutate_token_metadata([&] (token_metadata& tm) -> future<> {
|
||||
tm.update_host_id(host1, ip1);
|
||||
tm.update_host_id(host2, ip2);
|
||||
tm.update_host_id(host3, ip3);
|
||||
tm.update_host_id(host4, ip4);
|
||||
tm.update_topology(host1, dcrack, node::state::normal, shard_count);
|
||||
tm.update_topology(host2, dcrack, node::state::normal, shard_count);
|
||||
tm.update_topology(host3, dcrack, node::state::being_decommissioned, shard_count);
|
||||
@@ -1877,10 +1861,6 @@ SEASTAR_THREAD_TEST_CASE(test_decommission_two_racks) {
|
||||
stm.mutate_token_metadata([&](token_metadata& tm) -> future<> {
|
||||
const unsigned shard_count = 1;
|
||||
|
||||
tm.update_host_id(host1, ip1);
|
||||
tm.update_host_id(host2, ip2);
|
||||
tm.update_host_id(host3, ip3);
|
||||
tm.update_host_id(host4, ip4);
|
||||
tm.update_topology(host1, racks[0], node::state::normal, shard_count);
|
||||
tm.update_topology(host2, racks[1], node::state::normal, shard_count);
|
||||
tm.update_topology(host3, racks[0], node::state::normal, shard_count);
|
||||
@@ -1984,10 +1964,6 @@ SEASTAR_THREAD_TEST_CASE(test_decommission_rack_load_failure) {
|
||||
stm.mutate_token_metadata([&](token_metadata& tm) -> future<> {
|
||||
const unsigned shard_count = 1;
|
||||
|
||||
tm.update_host_id(host1, ip1);
|
||||
tm.update_host_id(host2, ip2);
|
||||
tm.update_host_id(host3, ip3);
|
||||
tm.update_host_id(host4, ip4);
|
||||
tm.update_topology(host1, racks[0], node::state::normal, shard_count);
|
||||
tm.update_topology(host2, racks[0], node::state::normal, shard_count);
|
||||
tm.update_topology(host3, racks[0], node::state::normal, shard_count);
|
||||
@@ -2063,9 +2039,6 @@ SEASTAR_THREAD_TEST_CASE(test_decommission_rf_not_met) {
|
||||
stm.mutate_token_metadata([&](token_metadata& tm) -> future<> {
|
||||
const unsigned shard_count = 2;
|
||||
|
||||
tm.update_host_id(host1, ip1);
|
||||
tm.update_host_id(host2, ip2);
|
||||
tm.update_host_id(host3, ip3);
|
||||
tm.update_topology(host1, locator::endpoint_dc_rack::default_location, node::state::normal, shard_count);
|
||||
tm.update_topology(host2, locator::endpoint_dc_rack::default_location, node::state::normal, shard_count);
|
||||
tm.update_topology(host3, locator::endpoint_dc_rack::default_location, node::state::being_decommissioned,
|
||||
@@ -2122,9 +2095,6 @@ SEASTAR_THREAD_TEST_CASE(test_load_balancing_works_with_in_progress_transitions)
|
||||
});
|
||||
|
||||
stm.mutate_token_metadata([&] (token_metadata& tm) -> future<> {
|
||||
tm.update_host_id(host1, ip1);
|
||||
tm.update_host_id(host2, ip2);
|
||||
tm.update_host_id(host3, ip3);
|
||||
tm.update_topology(host1, locator::endpoint_dc_rack::default_location, node::state::normal, 1);
|
||||
tm.update_topology(host2, locator::endpoint_dc_rack::default_location, node::state::normal, 1);
|
||||
tm.update_topology(host3, locator::endpoint_dc_rack::default_location, node::state::normal, 2);
|
||||
@@ -2196,9 +2166,6 @@ SEASTAR_THREAD_TEST_CASE(test_load_balancer_shuffle_mode) {
|
||||
});
|
||||
|
||||
stm.mutate_token_metadata([&] (token_metadata& tm) -> future<> {
|
||||
tm.update_host_id(host1, ip1);
|
||||
tm.update_host_id(host2, ip2);
|
||||
tm.update_host_id(host3, ip3);
|
||||
tm.update_topology(host1, locator::endpoint_dc_rack::default_location, node::state::normal, 1);
|
||||
tm.update_topology(host2, locator::endpoint_dc_rack::default_location, node::state::normal, 1);
|
||||
tm.update_topology(host3, locator::endpoint_dc_rack::default_location, node::state::normal, 2);
|
||||
@@ -2263,10 +2230,6 @@ SEASTAR_THREAD_TEST_CASE(test_load_balancing_with_two_empty_nodes) {
|
||||
});
|
||||
|
||||
stm.mutate_token_metadata([&] (token_metadata& tm) -> future<> {
|
||||
tm.update_host_id(host1, ip1);
|
||||
tm.update_host_id(host2, ip2);
|
||||
tm.update_host_id(host3, ip3);
|
||||
tm.update_host_id(host4, ip4);
|
||||
tm.update_topology(host1, locator::endpoint_dc_rack::default_location, node::state::normal, shard_count);
|
||||
tm.update_topology(host2, locator::endpoint_dc_rack::default_location, node::state::normal, shard_count);
|
||||
tm.update_topology(host3, locator::endpoint_dc_rack::default_location, node::state::normal, shard_count);
|
||||
@@ -2328,9 +2291,6 @@ SEASTAR_THREAD_TEST_CASE(test_load_balancing_with_asymmetric_node_capacity) {
|
||||
});
|
||||
|
||||
stm.mutate_token_metadata([&](token_metadata& tm) -> future<> {
|
||||
tm.update_host_id(host1, ip1);
|
||||
tm.update_host_id(host2, ip2);
|
||||
tm.update_host_id(host3, ip3);
|
||||
tm.update_topology(host1, locator::endpoint_dc_rack::default_location, node::state::being_decommissioned, 8);
|
||||
tm.update_topology(host2, locator::endpoint_dc_rack::default_location, node::state::normal, 1);
|
||||
tm.update_topology(host3, locator::endpoint_dc_rack::default_location, node::state::normal, 7);
|
||||
@@ -2395,8 +2355,6 @@ SEASTAR_THREAD_TEST_CASE(test_load_balancer_disabling) {
|
||||
// host1 is loaded and host2 is empty, resulting in an imbalance.
|
||||
// host1's shard 0 is loaded and shard 1 is empty, resulting in intra-node imbalance.
|
||||
stm.mutate_token_metadata([&] (auto& tm) -> future<> {
|
||||
tm.update_host_id(host1, ip1);
|
||||
tm.update_host_id(host2, ip2);
|
||||
tm.update_topology(host1, locator::endpoint_dc_rack::default_location, node::state::normal, shard_count);
|
||||
tm.update_topology(host2, locator::endpoint_dc_rack::default_location, node::state::normal, shard_count);
|
||||
co_await tm.update_normal_tokens(std::unordered_set{token(tests::d2t(1. / 2))}, host1);
|
||||
@@ -2487,8 +2445,6 @@ SEASTAR_THREAD_TEST_CASE(test_drained_node_is_not_balanced_internally) {
|
||||
});
|
||||
|
||||
stm.mutate_token_metadata([&] (locator::token_metadata& tm) -> future<> {
|
||||
tm.update_host_id(host1, ip1);
|
||||
tm.update_host_id(host2, ip2);
|
||||
tm.update_topology(host1, locator::endpoint_dc_rack::default_location, locator::node::state::being_removed, shard_count);
|
||||
tm.update_topology(host2, locator::endpoint_dc_rack::default_location, node::state::normal, shard_count);
|
||||
co_await tm.update_normal_tokens(std::unordered_set{token(tests::d2t(1. / 2))}, host1);
|
||||
@@ -2537,7 +2493,6 @@ SEASTAR_THREAD_TEST_CASE(test_plan_fails_when_removing_last_replica) {
|
||||
});
|
||||
|
||||
stm.mutate_token_metadata([&] (locator::token_metadata& tm) -> future<> {
|
||||
tm.update_host_id(host1, ip1);
|
||||
tm.update_topology(host1, locator::endpoint_dc_rack::default_location, locator::node::state::being_removed, shard_count);
|
||||
co_await tm.update_normal_tokens(std::unordered_set{token(tests::d2t(1. / 2))}, host1);
|
||||
|
||||
@@ -2589,9 +2544,6 @@ SEASTAR_THREAD_TEST_CASE(test_skiplist_is_ignored_when_draining) {
|
||||
});
|
||||
|
||||
stm.mutate_token_metadata([&] (locator::token_metadata& tm) -> future<> {
|
||||
tm.update_host_id(host1, ip1);
|
||||
tm.update_host_id(host2, ip2);
|
||||
tm.update_host_id(host3, ip3);
|
||||
tm.update_topology(host1, locator::endpoint_dc_rack::default_location, locator::node::state::being_removed, shard_count);
|
||||
tm.update_topology(host2, locator::endpoint_dc_rack::default_location, locator::node::state::normal, shard_count);
|
||||
tm.update_topology(host3, locator::endpoint_dc_rack::default_location, locator::node::state::normal, shard_count);
|
||||
@@ -2699,10 +2651,8 @@ SEASTAR_THREAD_TEST_CASE(test_load_balancing_with_random_load) {
|
||||
|
||||
int i = 0;
|
||||
for (auto h : hosts) {
|
||||
auto ip = inet_address(format("192.168.0.{}", ++i));
|
||||
auto shard_count = 2;
|
||||
tm.update_host_id(h, ip);
|
||||
auto rack = racks[i % racks.size()];
|
||||
auto rack = racks[++i % racks.size()];
|
||||
tm.update_topology(h, rack, node::state::normal, shard_count);
|
||||
if (h != hosts[0]) {
|
||||
// Leave the first host empty by making it invisible to allocation algorithm.
|
||||
@@ -2871,13 +2821,11 @@ static void do_test_load_balancing_merge_colocation(cql_test_env& e, const int n
|
||||
|
||||
int i = 0;
|
||||
for (auto h : hosts) {
|
||||
auto ip = inet_address(format("192.168.0.{}", ++i));
|
||||
tm.update_host_id(h, ip);
|
||||
auto rack = racks[i % racks.size()];
|
||||
auto rack = racks[++i % racks.size()];
|
||||
hosts_by_rack[rack.rack].push_back(h);
|
||||
tm.update_topology(h, rack, node::state::normal, shard_count);
|
||||
co_await tm.update_normal_tokens(std::unordered_set{token(tests::d2t(float(i) / hosts.size()))}, h);
|
||||
testlog.debug("adding host {}, ip {}, rack {}, token {}", h, ip, rack.rack, token(tests::d2t(1. / hosts.size())));
|
||||
testlog.debug("adding host {}, rack {}, token {}", h, rack.rack, token(tests::d2t(1. / hosts.size())));
|
||||
}
|
||||
|
||||
tablet_map tmap(initial_tablets);
|
||||
@@ -3056,8 +3004,6 @@ SEASTAR_THREAD_TEST_CASE(test_load_balancing_resize_requests) {
|
||||
});
|
||||
|
||||
stm.mutate_token_metadata([&] (token_metadata& tm) -> future<> {
|
||||
tm.update_host_id(host1, ip1);
|
||||
tm.update_host_id(host2, ip2);
|
||||
tm.update_topology(host1, locator::endpoint_dc_rack::default_location, node::state::normal, shard_count);
|
||||
tm.update_topology(host2, locator::endpoint_dc_rack::default_location, node::state::normal, shard_count);
|
||||
co_await tm.update_normal_tokens(std::unordered_set{token(tests::d2t(1. / 2))}, host1);
|
||||
@@ -3341,7 +3287,6 @@ static void execute_tablet_for_new_rf_test(calculate_tablet_replicas_for_new_rf_
|
||||
std::unordered_set<token> tokens;
|
||||
tokens.insert(dht::token{tests::d2t(ring_point / test_config.ring_points.size())});
|
||||
topo.add_or_update_endpoint(id, make_endpoint_dc_rack(endpoint), locator::node::state::normal, 1);
|
||||
tm.update_host_id(id, endpoint);
|
||||
co_await tm.update_normal_tokens(std::move(tokens), id);
|
||||
}
|
||||
}).get();
|
||||
@@ -3362,7 +3307,6 @@ static void execute_tablet_for_new_rf_test(calculate_tablet_replicas_for_new_rf_
|
||||
stm.mutate_token_metadata([&] (token_metadata& tm) {
|
||||
for (size_t i = 0; i < test_config.ring_points.size(); ++i) {
|
||||
auto& [ring_point, endpoint, id] = test_config.ring_points[i];
|
||||
tm.update_host_id(id, endpoint);
|
||||
tm.update_topology(id, make_endpoint_dc_rack(endpoint), node::state::normal, nodes_shard_count[i]);
|
||||
}
|
||||
return make_ready_future<>();
|
||||
|
||||
@@ -50,16 +50,12 @@ namespace {
|
||||
}
|
||||
|
||||
SEASTAR_THREAD_TEST_CASE(test_pending_and_read_endpoints_for_everywhere_strategy) {
|
||||
const auto e1 = inet_address("192.168.0.1");
|
||||
const auto e2 = inet_address("192.168.0.2");
|
||||
const auto e1_id = gen_id(1);
|
||||
const auto e2_id = gen_id(2);
|
||||
const auto t1 = dht::token::from_int64(10);
|
||||
const auto t2 = dht::token::from_int64(20);
|
||||
|
||||
auto token_metadata = create_token_metadata(e1_id);
|
||||
token_metadata->update_host_id(e1_id, e1);
|
||||
token_metadata->update_host_id(e2_id, e2);
|
||||
token_metadata->update_topology(e1_id, get_dc_rack(e1_id), node::state::normal);
|
||||
token_metadata->update_topology(e2_id, get_dc_rack(e2_id), node::state::normal);
|
||||
token_metadata->update_normal_tokens({t1}, e1_id).get();
|
||||
@@ -74,16 +70,12 @@ SEASTAR_THREAD_TEST_CASE(test_pending_and_read_endpoints_for_everywhere_strategy
|
||||
}
|
||||
|
||||
SEASTAR_THREAD_TEST_CASE(test_pending_endpoints_for_bootstrap_second_node) {
|
||||
const auto e1 = inet_address("192.168.0.1");
|
||||
const auto t1 = dht::token::from_int64(1);
|
||||
const auto e2 = inet_address("192.168.0.2");
|
||||
const auto t2 = dht::token::from_int64(100);
|
||||
const auto e1_id = gen_id(1);
|
||||
const auto e2_id = gen_id(2);
|
||||
|
||||
auto token_metadata = create_token_metadata(e1_id);
|
||||
token_metadata->update_host_id(e1_id, e1);
|
||||
token_metadata->update_host_id(e2_id, e2);
|
||||
token_metadata->update_topology(e1_id, get_dc_rack(e1_id), node::state::normal);
|
||||
token_metadata->update_topology(e2_id, get_dc_rack(e2_id), node::state::normal);
|
||||
token_metadata->update_normal_tokens({t1}, e1_id).get();
|
||||
@@ -107,17 +99,11 @@ SEASTAR_THREAD_TEST_CASE(test_pending_endpoints_for_bootstrap_with_replicas) {
|
||||
const auto t10 = dht::token::from_int64(10);
|
||||
const auto t100 = dht::token::from_int64(100);
|
||||
const auto t1000 = dht::token::from_int64(1000);
|
||||
const auto e1 = inet_address("192.168.0.1");
|
||||
const auto e2 = inet_address("192.168.0.2");
|
||||
const auto e3 = inet_address("192.168.0.3");
|
||||
const auto e1_id = gen_id(1);
|
||||
const auto e2_id = gen_id(2);
|
||||
const auto e3_id = gen_id(3);
|
||||
|
||||
auto token_metadata = create_token_metadata(e1_id);
|
||||
token_metadata->update_host_id(e1_id, e1);
|
||||
token_metadata->update_host_id(e2_id, e2);
|
||||
token_metadata->update_host_id(e3_id, e3);
|
||||
token_metadata->update_topology(e1_id, get_dc_rack(e1_id), node::state::normal);
|
||||
token_metadata->update_topology(e2_id, get_dc_rack(e2_id), node::state::normal);
|
||||
token_metadata->update_topology(e3_id, get_dc_rack(e3_id), node::state::normal);
|
||||
@@ -143,17 +129,11 @@ SEASTAR_THREAD_TEST_CASE(test_pending_endpoints_for_leave_with_replicas) {
|
||||
const auto t10 = dht::token::from_int64(10);
|
||||
const auto t100 = dht::token::from_int64(100);
|
||||
const auto t1000 = dht::token::from_int64(1000);
|
||||
const auto e1 = inet_address("192.168.0.1");
|
||||
const auto e2 = inet_address("192.168.0.2");
|
||||
const auto e3 = inet_address("192.168.0.3");
|
||||
const auto e1_id = gen_id(1);
|
||||
const auto e2_id = gen_id(2);
|
||||
const auto e3_id = gen_id(3);
|
||||
|
||||
auto token_metadata = create_token_metadata(e1_id);
|
||||
token_metadata->update_host_id(e1_id, e1);
|
||||
token_metadata->update_host_id(e2_id, e2);
|
||||
token_metadata->update_host_id(e3_id, e3);
|
||||
token_metadata->update_topology(e1_id, get_dc_rack(e1_id), node::state::normal);
|
||||
token_metadata->update_topology(e2_id, get_dc_rack(e2_id), node::state::normal);
|
||||
token_metadata->update_topology(e3_id, get_dc_rack(e3_id), node::state::normal);
|
||||
@@ -180,20 +160,12 @@ SEASTAR_THREAD_TEST_CASE(test_pending_endpoints_for_replace_with_replicas) {
|
||||
const auto t10 = dht::token::from_int64(10);
|
||||
const auto t100 = dht::token::from_int64(100);
|
||||
const auto t1000 = dht::token::from_int64(1000);
|
||||
const auto e1 = inet_address("192.168.0.1");
|
||||
const auto e2 = inet_address("192.168.0.2");
|
||||
const auto e3 = inet_address("192.168.0.3");
|
||||
const auto e4 = inet_address("192.168.0.4");
|
||||
const auto e1_id = gen_id(1);
|
||||
const auto e2_id = gen_id(2);
|
||||
const auto e3_id = gen_id(3);
|
||||
const auto e4_id = gen_id(4);
|
||||
|
||||
auto token_metadata = create_token_metadata(e1_id);
|
||||
token_metadata->update_host_id(e1_id, e1);
|
||||
token_metadata->update_host_id(e2_id, e2);
|
||||
token_metadata->update_host_id(e3_id, e3);
|
||||
token_metadata->update_host_id(e4_id, e4);
|
||||
token_metadata->update_topology(e1_id, get_dc_rack(e1_id), node::state::normal);
|
||||
token_metadata->update_topology(e2_id, get_dc_rack(e2_id), node::state::normal);
|
||||
token_metadata->update_topology(e3_id, get_dc_rack(e3_id), node::state::normal);
|
||||
@@ -225,17 +197,11 @@ SEASTAR_THREAD_TEST_CASE(test_endpoints_for_reading_when_bootstrap_with_replicas
|
||||
const auto t10 = dht::token::from_int64(10);
|
||||
const auto t100 = dht::token::from_int64(100);
|
||||
const auto t1000 = dht::token::from_int64(1000);
|
||||
const auto e1 = inet_address("192.168.0.1");
|
||||
const auto e2 = inet_address("192.168.0.2");
|
||||
const auto e3 = inet_address("192.168.0.3");
|
||||
const auto e1_id = gen_id(1);
|
||||
const auto e2_id = gen_id(2);
|
||||
const auto e3_id = gen_id(3);
|
||||
|
||||
auto token_metadata = create_token_metadata(e1_id);
|
||||
token_metadata->update_host_id(e1_id, e1);
|
||||
token_metadata->update_host_id(e2_id, e2);
|
||||
token_metadata->update_host_id(e3_id, e3);
|
||||
token_metadata->update_topology(e1_id, get_dc_rack(e1_id), node::state::normal);
|
||||
token_metadata->update_topology(e2_id, get_dc_rack(e2_id), node::state::normal);
|
||||
token_metadata->update_topology(e3_id, get_dc_rack(e3_id), node::state::normal);
|
||||
@@ -285,17 +251,14 @@ SEASTAR_THREAD_TEST_CASE(test_endpoints_for_reading_when_bootstrap_with_replicas
|
||||
|
||||
SEASTAR_THREAD_TEST_CASE(test_replace_node_with_same_endpoint) {
|
||||
const auto t1 = dht::token::from_int64(1);
|
||||
const auto e1 = inet_address("192.168.0.1");
|
||||
const auto e1_id1 = gen_id(1);
|
||||
const auto e1_id2 = gen_id(2);
|
||||
|
||||
auto token_metadata = create_token_metadata(e1_id2);
|
||||
token_metadata->update_host_id(e1_id1, e1);
|
||||
token_metadata->update_topology(e1_id1, get_dc_rack(e1_id1), node::state::being_replaced);
|
||||
token_metadata->update_normal_tokens({t1}, e1_id1).get();
|
||||
|
||||
token_metadata->update_topology(e1_id2, get_dc_rack(e1_id2), node::state::replacing);
|
||||
token_metadata->update_host_id(e1_id2, e1);
|
||||
|
||||
token_metadata->add_replacing_endpoint(e1_id1, e1_id2);
|
||||
|
||||
|
||||
@@ -243,7 +243,6 @@ future<results> test_load_balancing_with_many_tables(params p, bool tablet_aware
|
||||
};
|
||||
|
||||
auto add_host_to_topology = [&] (token_metadata& tm, int i) -> future<> {
|
||||
tm.update_host_id(hosts[i], ips[i]);
|
||||
tm.update_topology(hosts[i], rack1, node::state::normal, shard_count);
|
||||
co_await tm.update_normal_tokens(std::unordered_set{token(tests::d2t(float(i) / hosts.size()))}, hosts[i]);
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user