-
Notifications
You must be signed in to change notification settings - Fork 741
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[202405] Fix intermittent issue on reboot in test_lldp_syncd #15331
[202405] Fix intermittent issue on reboot in test_lldp_syncd #15331
Conversation
The pre-commit check detected issues in the files touched by this pull request. Detailed pre-commit check results: To run the pre-commit checks locally, you can follow below steps:
|
@veronica-arista there is conflict in your PR. could you please check? |
At the start of test_lldp_syncd.py::test_lldp_entry_table_after_reboot the test polls and checks that LLDP_ENTRY_TABLE keys match show lldp table output. The eth0 port is added last so sometimes the entry keys will have it but the lldp table output will not. From debugging, this is the case since the end of the previous test (I put a check on the keys vs lldp table output and observed the missing eth0 at the end of test_lldp_syncd.py::test_lldp_entry_table_after_lldp_restart) Added a wait_until at the start of test_lldp_entry_table_after_reboot to wait until the LLDP_ENTRY_TABLE keys match show lldp table output before the tests starts to reboot.
ff7f19f
to
24ed2ce
Compare
@ZhaohuiS thanks, I fixed the merge conflict. |
@@ -322,6 +329,12 @@ def test_lldp_entry_table_after_reboot( | |||
localhost, duthosts, enum_rand_one_per_hwsku_frontend_hostname, db_instance | |||
): | |||
duthost = duthosts[enum_rand_one_per_hwsku_frontend_hostname] | |||
|
|||
# Verify LLDP_ENTRY_TABLE keys match show lldp table output at the start of test |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There will be a reboot afterwards. All lldp_entry_keys and show_lldp_table_int_list will be checked after reboot. Will this check here still useful or it is not necessary anymore with another fix got in already?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@wumiaont Ye, you are right, that's why I move the collection and verification after reboot, please check this PR https://github.com/sonic-net/sonic-mgmt/pull/15337/files
/Azp run Azure.sonic-mgmt |
Azure Pipelines successfully started running 1 pipeline(s). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
At the start of test_lldp_syncd.py::test_lldp_entry_table_after_reboot the test polls and checks that LLDP_ENTRY_TABLE keys match show lldp table output. The eth0 port is added last so sometimes the entry keys will have it but the lldp table output will not. From debugging, this is the case since the end of the previous test (I put a check on the keys vs lldp table output and observed the missing eth0 at the end of test_lldp_syncd.py::test_lldp_entry_table_after_lldp_restart) Added a wait_until at the start of test_lldp_entry_table_after_reboot to wait until the LLDP_ENTRY_TABLE keys match show lldp table output before the tests starts to reboot.
Cherry-pick PR to 202405: #15535 |
At the start of test_lldp_syncd.py::test_lldp_entry_table_after_reboot the test polls and checks that LLDP_ENTRY_TABLE keys match show lldp table output. The eth0 port is added last so sometimes the entry keys will have it but the lldp table output will not. From debugging, this is the case since the end of the previous test (I put a check on the keys vs lldp table output and observed the missing eth0 at the end of test_lldp_syncd.py::test_lldp_entry_table_after_lldp_restart) Added a wait_until at the start of test_lldp_entry_table_after_reboot to wait until the LLDP_ENTRY_TABLE keys match show lldp table output before the tests starts to reboot.
At the start of test_lldp_syncd.py::test_lldp_entry_table_after_reboot the test polls and checks that LLDP_ENTRY_TABLE keys match show lldp table output. The eth0 port is added last so sometimes the entry keys will have it but the lldp table output will not. From debugging, this is the case since the end of the previous test (I put a check on the keys vs lldp table output and observed the missing eth0 at the end of test_lldp_syncd.py::test_lldp_entry_table_after_lldp_restart) Added a wait_until at the start of test_lldp_entry_table_after_reboot to wait until the LLDP_ENTRY_TABLE keys match show lldp table output before the tests starts to reboot.
At the start of test_lldp_syncd.py::test_lldp_entry_table_after_reboot the test polls and checks that LLDP_ENTRY_TABLE keys match show lldp table output. The eth0 port is added last so sometimes the entry keys will have it but the lldp table output will not. From debugging, this is the case since the end of the previous test (I put a check on the keys vs lldp table output and observed the missing eth0 at the end of test_lldp_syncd.py::test_lldp_entry_table_after_lldp_restart) Added a wait_until at the start of test_lldp_entry_table_after_reboot to wait until the LLDP_ENTRY_TABLE keys match show lldp table output before the tests starts to reboot.
Description of PR
At the start of
test_lldp_syncd.py::test_lldp_entry_table_after_reboot
the test polls and checks that LLDP_ENTRY_TABLE keys match show lldp table output.The
eth0
port is added last so sometimes the entry keys will have it but the lldp table output will not. From debugging, this is the case since the end of the previous test (I put a check on the keys vs lldp table output and observed the missingeth0
at the end oftest_lldp_syncd.py::test_lldp_entry_table_after_lldp_restart
). From our test results, this issue hits both fixed and modular, but appears to be more easily reproduced on fixed systems.Added a wait_until at the start of
test_lldp_entry_table_after_reboot
to wait until the LLDP_ENTRY_TABLE keys match show lldp table output before the tests starts to reboot.Summary:
Fixes # (issue)
Type of change
Back port request
Approach
What is the motivation for this PR?
Observed another intermittent issue in
test_lldp_syncd
in addition to the issues fixed by #15258.How did you do it?
How did you verify/test it?
Verified the test on one of our fixed system by running test 50 times with this change and PR#15258 to ensure all the intermittent fails are gone.
Any platform specific information?
Supported testbed topology if it's a new test case?
Documentation