This is already fix released all the way back to stable/train - https://review.opendev.org/q/I2cc58c30cf844ee0ecf0611ecdec430086464790 - so i will update LP to reflect that.
** Changed in: neutron Status: Fix Committed => Fix Released -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to neutron. https://bugs.launchpad.net/bugs/1916022 Title: L3HA Race condition during startup of the agent may cause inconsistent router's states Status in neutron: Fix Released Bug description: I observed that issue in Tobiko jobs, like e.g. https://5f31a0f7dc56e4b42a89-207bd119fd0c3b58e9c78074b243256d.ssl.cf2.rackcdn.com/776284/2/check /devstack-tobiko-gate- multinode/257fd87/tobiko_results_05_verify_resources_scenario.html Problem with HA routers. What happens there is that when neutron-l3-agent and then keepalived on node which is master is killed, new node becomes master but VIP address isn't removed from the qrouter namespace. Then some other node becomes new master as keepalived on that running nodes did its job. When stopped agent is started it first calls update_initial_state() https://github.com/openstack/neutron/blob/90309cf6e2f3ed5ae6d5f4cca3c5351c2ac67a13/neutron/agent/l3/ha_router.py#L159 which will enqueue state change event and may do it with "primary" state (it's old state from before agent and keepalived was down. And immediately after that, it will also spawn state change monitor. And that monitor will also enqueue state change event. This one may be with correct "backup" state already. But as there was already state "primary" scheduled to be processed, new one will be dropped. And due to that it will end up with 2 nodes in "primary" state. I think that calling of update_initial_state() isn't really needed as state change monitor is handling notification of the initial state always just after start of the process. To manage notifications about this bug go to: https://bugs.launchpad.net/neutron/+bug/1916022/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : yahoo-eng-team@lists.launchpad.net Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp