From e8be8becbcd7b0933232f8e6e2d84becc63c991e Mon Sep 17 00:00:00 2001 From: Yaqiang Zhu Date: Wed, 11 Dec 2024 15:53:54 +0800 Subject: [PATCH] [dhcp_relay] Increase wait time for default route check in dhcp_relay test (#15976) What is the motivation for this PR? There is flaky failure in this case because default route missing How did you do it? Increase wait time for it. Add log for triage How did you verify/test it? Run test --- tests/dhcp_relay/conftest.py | 2 +- tests/dhcp_relay/dhcp_relay_utils.py | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/tests/dhcp_relay/conftest.py b/tests/dhcp_relay/conftest.py index 8543bc12eb6..49d546877c9 100644 --- a/tests/dhcp_relay/conftest.py +++ b/tests/dhcp_relay/conftest.py @@ -146,7 +146,7 @@ def dut_dhcp_relay_data(duthosts, rand_one_dut_hostname, ptfhost, tbinfo): def validate_dut_routes_exist(duthosts, rand_one_dut_hostname, dut_dhcp_relay_data): """Fixture to valid a route to each DHCP server exist """ - py_assert(wait_until(120, 5, 0, check_routes_to_dhcp_server, duthosts[rand_one_dut_hostname], + py_assert(wait_until(360, 5, 0, check_routes_to_dhcp_server, duthosts[rand_one_dut_hostname], dut_dhcp_relay_data), "Packets relayed to DHCP server should go through default route via upstream neighbor, but now it's" + " going through mgmt interface, which means device is in an unhealthy status") diff --git a/tests/dhcp_relay/dhcp_relay_utils.py b/tests/dhcp_relay/dhcp_relay_utils.py index 37544150cc0..1ea04c8021b 100644 --- a/tests/dhcp_relay/dhcp_relay_utils.py +++ b/tests/dhcp_relay/dhcp_relay_utils.py @@ -9,6 +9,10 @@ def check_routes_to_dhcp_server(duthost, dut_dhcp_relay_data): """Validate there is route on DUT to each DHCP server """ + output = duthost.shell("show ip bgp sum", module_ignore_errors=True) + logger.info("bgp state: {}".format(output["stdout"])) + output = duthost.shell("show int po", module_ignore_errors=True) + logger.info("portchannel state: {}".format(output["stdout"])) default_gw_ip = dut_dhcp_relay_data[0]['default_gw_ip'] dhcp_servers = set() for dhcp_relay in dut_dhcp_relay_data: