Reviewed: https://review.opendev.org/c/openstack/neutron/+/808071 Committed: https://opendev.org/openstack/neutron/commit/b8ef8e722af761dd394064ab70e159aa05639e56 Submitter: "Zuul (22348)" Branch: master
commit b8ef8e722af761dd394064ab70e159aa05639e56 Author: Slawek Kaplonski <[email protected]> Date: Thu Sep 9 15:10:40 2021 +0200 [Functional] Wait for the initial state of ha router before test In functional tests of the HA and DVR HA routers, when e.g. failover is tested, we should always wait for routers to be in the expected initial state (primary or backup) before router failover will actually be done. Without that, we may hit race condition when initial router's state is enqueued but not processed yet and then state will be changed thus no any action will be performed by L3 agent and test may fail. Closes-Bug: #1939507 Change-Id: Ibd8f78fc822b04965c6a79b57b13be364934f64f ** Changed in: neutron Status: In Progress => 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/1939507 Title: Timeout while waiting for router HA state transition Status in neutron: Fix Released Bug description: It happens in functional tests, like e.g. in neutron.tests.functional.agent.l3.test_ha_router.L3HATestCase.test_ipv6_router_advts_and_fwd_after_router_state_change_backup: https://a1fab4006c6a1daf82f2-bd8cbc347d913753596edf9ef5797d55.ssl.cf1.rackcdn.com/786478/17/check/neutron- functional-with-uwsgi/7250dcf/testr_results.html Error is like: ft1.10: neutron.tests.functional.agent.l3.test_ha_router.L3HATestCase.test_ipv6_router_advts_and_fwd_after_router_state_change_backuptesttools.testresult.real._StringException: Traceback (most recent call last): File "/home/zuul/src/opendev.org/openstack/neutron/neutron/common/utils.py", line 702, in wait_until_true eventlet.sleep(sleep) File "/home/zuul/src/opendev.org/openstack/neutron/.tox/dsvm-functional/lib/python3.8/site-packages/eventlet/greenthread.py", line 36, in sleep hub.switch() File "/home/zuul/src/opendev.org/openstack/neutron/.tox/dsvm-functional/lib/python3.8/site-packages/eventlet/hubs/hub.py", line 313, in switch return self.greenlet.switch() eventlet.timeout.Timeout: 60 seconds During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/zuul/src/opendev.org/openstack/neutron/neutron/tests/base.py", line 183, in func return f(self, *args, **kwargs) File "/home/zuul/src/opendev.org/openstack/neutron/neutron/tests/functional/agent/l3/test_ha_router.py", line 148, in test_ipv6_router_advts_and_fwd_after_router_state_change_backup self._test_ipv6_router_advts_and_fwd_helper('backup', File "/home/zuul/src/opendev.org/openstack/neutron/neutron/tests/functional/agent/l3/test_ha_router.py", line 118, in _test_ipv6_router_advts_and_fwd_helper common_utils.wait_until_true(lambda: router.ha_state == 'backup') File "/home/zuul/src/opendev.org/openstack/neutron/neutron/common/utils.py", line 707, in wait_until_true raise WaitTimeout(_("Timed out after %d seconds") % timeout) neutron.common.utils.WaitTimeout: Timed out after 60 seconds To manage notifications about this bug go to: https://bugs.launchpad.net/neutron/+bug/1939507/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : [email protected] Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp

