From 49fa1130ef591c9eebd21be2fbe4bab303ed321d Mon Sep 17 00:00:00 2001 From: Gleb Natapov Date: Sun, 5 Jan 2025 16:35:13 +0200 Subject: [PATCH] topology coordinator: change connection dropping code to work on host ids Do not use ip from topology::node, but look it up in address map instead. We want to drop ip from the topology::node. --- service/storage_service.cc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/service/storage_service.cc b/service/storage_service.cc index 7e331106bb..8dc6a1783f 100644 --- a/service/storage_service.cc +++ b/service/storage_service.cc @@ -780,9 +780,9 @@ future<> storage_service::topology_state_load(state_change_hint hint) { { std::vector> futures; get_token_metadata_ptr()->get_topology().for_each_node([&](const locator::node& n) { - const auto ep = n.endpoint(); - if (ep != inet_address{} && !saved_tmpr->get_topology().has_endpoint(ep)) { - futures.push_back(remove_rpc_client_with_ignored_topology(ep, n.host_id())); + const auto ep = n.host_id(); + if (auto ip_opt = _address_map.find(ep); ip_opt && !saved_tmpr->get_topology().has_node(ep)) { + futures.push_back(remove_rpc_client_with_ignored_topology(*ip_opt, n.host_id())); } }); co_await when_all_succeed(futures.begin(), futures.end()).discard_result();