diff --git a/service/topology_coordinator.cc b/service/topology_coordinator.cc index b2c490060f..82bb41437e 100644 --- a/service/topology_coordinator.cc +++ b/service/topology_coordinator.cc @@ -2325,12 +2325,14 @@ class topology_coordinator : public endpoint_lifecycle_subscriber { break; } - builder.set_transition_state(topology::transition_state::tablet_draining) + guard = take_guard(std::move(node)); + builder.set_transition_state(topology::transition_state::write_both_read_old) .set_version(_topo_sm._topology.version + 1) + .set_session(session_id(guard.new_group0_state_id())) .with_node(node.id) .set("tokens", it->second.ring->tokens); - co_await update_topology_state(take_guard(std::move(node)), {builder.build()}, - "replace: transition to tablet_draining and take ownership of the replaced node's tokens"); + co_await update_topology_state(std::move(guard), {builder.build()}, + "replace: transition to write_both_read_old and take ownership of the replaced node's tokens"); } break; default: