raft: make a replaced node a non-voter early

We make a replaced node a non-voter early, just as a removed node
in 377f87c91a.

Closes #15022
This commit is contained in:
Patryk Jędrzejczak
2023-08-11 11:28:53 +02:00
committed by Kamil Braun
parent 0cd0be6275
commit 2e2271f639

View File

@@ -1649,6 +1649,13 @@ class topology_coordinator {
}
}
}
if (node.rs->state == node_state::replacing) {
// We make a replaced node a non-voter early, just like a removed node.
auto replaced_node_id = parse_replaced_node(node);
if (_group0.is_member(replaced_node_id, true)) {
co_await _group0.make_nonvoter(replaced_node_id);
}
}
raft_topology_cmd cmd{raft_topology_cmd::command::stream_ranges};
if (node.rs->state == node_state::removing) {