From: Numan Siddique <num...@ovn.org> This testsuite is failing frequently in travis CI and locally when tests are run with "-j5".
The test case deletes the chassis row for chassis 'gw2' and expects that this doesn't cause the chassisresident port on the master ('gw1') to not bounce as 'gw1' has higher priority than gw2. But since the ha chassis group has only 2 chassis, 'gw2' can claim the port momemtarily when 'gw2' chassis row is recreated back until BFD session with 'gw1' is not established. This patch changes the test assertion approach and makes sure that 'gw1' is the owner of the chassisresident port eventually. Signed-off-by: Numan Siddique <num...@ovn.org> --- tests/ovn.at | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/tests/ovn.at b/tests/ovn.at index cb7903db8..35ffaf331 100644 --- a/tests/ovn.at +++ b/tests/ovn.at @@ -11033,12 +11033,26 @@ ovn-nbctl --wait=hv --timeout=3 sync # doesn't have the same effect because "name" is conserved, and the # Chassis entry is not replaced. -> gw1/ovn-controller.log - gw2_chassis=$(ovn-sbctl --bare --columns=_uuid find Chassis name=gw2) ovn-sbctl destroy Chassis $gw2_chassis -OVS_WAIT_UNTIL([test 0 = `grep -c "Releasing lport" gw1/ovn-controller.log`]) +# Wait for the gw2_chassis row is recreated. +OVS_WAIT_UNTIL([test 1 = `ovn-sbctl --bare --columns=_uuid find Chassis name=gw2 | wc -l`]) + +gw1_chassis=$(ovn-sbctl --bare --columns=_uuid find Chassis name=gw1) +gw2_chassis=$(ovn-sbctl --bare --columns=_uuid find Chassis name=gw2) + +# When gw2 chassis row is destroyed, it gets recreated. There +# is a small window in which gw2 may claim the cr-outside port if +# it has not established bfd tunnel with gw1. +# So make sure that, cr-outside is claimed by gw1 finally. +OVS_WAIT_WHILE( + [cr_outside_ch=`ovn-sbctl --bare --columns=chassis find Port_binding logical_port=cr-outside` + test $cr_outside_ch = $gw2_chassis]) + +OVS_WAIT_UNTIL( + [cr_outside_ch=`ovn-sbctl --bare --columns=chassis find Port_binding logical_port=cr-outside` + test $cr_outside_ch = $gw1_chassis]) OVN_CLEANUP([gw1],[gw2],[hv1]) -- 2.23.0 _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev