From 9a2ee415eee032590d7ce754a70eaf0017e3108f 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 7a974767918..2b0d58a4067 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: