From a49ae3ff875efaaf7d6ccd31bb99f0b56518c0f4 Mon Sep 17 00:00:00 2001 From: Gleb Natapov Date: Thu, 7 Sep 2023 16:45:20 +0300 Subject: [PATCH] storage_service: raft topology: split get_excluded_nodes from exec_global_command Will be used later. --- service/storage_service.cc | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/service/storage_service.cc b/service/storage_service.cc index effd48f462..f2b293028b 100644 --- a/service/storage_service.cc +++ b/service/storage_service.cc @@ -1090,10 +1090,14 @@ class topology_coordinator { co_return guard; } - future exec_global_command(node_to_work_on&& node, const raft_topology_cmd& cmd) { - std::unordered_set exclude_nodes = parse_ignore_nodes(node); + std::unordered_set get_excluded_nodes(const node_to_work_on& node) { + auto exclude_nodes = parse_ignore_nodes(node); exclude_nodes.insert(parse_replaced_node(node)); - auto guard = co_await exec_global_command(std::move(node.guard), cmd, exclude_nodes, drop_guard_and_retake::yes); + return exclude_nodes; + } + + future exec_global_command(node_to_work_on&& node, const raft_topology_cmd& cmd) { + auto guard = co_await exec_global_command(std::move(node.guard), cmd, get_excluded_nodes(node), drop_guard_and_retake::yes); co_return retake_node(std::move(guard), node.id); };