Port a variant of commit a6d1a2997db4:
ofproto.at: Workaround a race
While a barrier serializes requests from the same connection,
it doesn't wait for requests from other connections to the switch.
Replace the barrier with infamous "sleep 1" to workaround the problem.
to the following tests:
"ofproto - asynchronous message control (OpenFlow 1.0)",
"ofproto - asynchronous message control (OpenFlow 1.3)",
"ofproto - asynchronous message control (OpenFlow 1.4)" and
"ofproto - asynchronous message control (OpenFlow 1.5)"
Do not use "sleep 1", but wait for log file to have (at least) the same
number of lines we expect (it generally waits less time).
Sometimes one of these tests fails because the OFPT_BARRIER_REPLY is
printed before the other message we expect to have.
Suggested-by: Lance Richardson <[email protected]>
Signed-off-by: Timothy Redaelli <[email protected]>
---
v2:
* wait for log file to have (at least) the same number of lines we expect
as per review comment
tests/ofproto.at | 14 +++++---------
1 file changed, 5 insertions(+), 9 deletions(-)
diff --git a/tests/ofproto.at b/tests/ofproto.at
index 4431c157..5431f4e8 100644
--- a/tests/ofproto.at
+++ b/tests/ofproto.at
@@ -3212,8 +3212,7 @@
udp,vlan_tci=0x0000,dl_src=00:26:b9:8c:b0:f9,dl_dst=00:25:83:df:b4:00,nw_src=172
fi
AT_FAIL_IF([test X"$1" != X])
- ovs-appctl -t ovs-ofctl ofctl/barrier
- echo >>expout "OFPT_BARRIER_REPLY:"
+ OVS_WAIT_UNTIL([test `wc -l < "monitor.log"` -ge `wc -l < "expout"`])
AT_CHECK(
[[sed '
@@ -3316,7 +3315,7 @@
udp,vlan_tci=0x0000,dl_src=00:26:b9:8c:b0:f9,dl_dst=00:25:83:df:b4:00,nw_src=172
fi
AT_FAIL_IF([test X"$1" != X])
- sleep 1
+ OVS_WAIT_UNTIL([test `wc -l < "monitor.log"` -ge `wc -l < "expout"`])
AT_CHECK(
[[sed '
@@ -3435,8 +3434,7 @@
udp,vlan_tci=0x0000,dl_src=00:26:b9:8c:b0:f9,dl_dst=00:25:83:df:b4:00,nw_src=172
AT_FAIL_IF([test X"$1" != X])
- ovs-appctl -t ovs-ofctl ofctl/barrier
- echo >>expout "OFPT_BARRIER_REPLY (OF1.3):"
+ OVS_WAIT_UNTIL([test `wc -l < "monitor.log"` -ge `wc -l < "expout"`])
AT_CHECK(
[[sed '
@@ -3645,8 +3643,7 @@ table_desc:-
AT_FAIL_IF([test X"$1" != X])
- ovs-appctl -t ovs-ofctl ofctl/barrier
- echo >>expout "OFPT_BARRIER_REPLY (OF1.4):"
+ OVS_WAIT_UNTIL([test `wc -l < "monitor.log"` -ge `wc -l < "expout"`])
AT_CHECK(
[[sed '
@@ -3734,8 +3731,7 @@ OFPT_PORT_STATUS (OF1.5): MOD: 2(test):
addr:aa:55:aa:55:00:0x
AT_FAIL_IF([test X"$1" != X])
- ovs-appctl -t ovs-ofctl ofctl/barrier
- echo >>expout "OFPT_BARRIER_REPLY (OF1.5):"
+ OVS_WAIT_UNTIL([test `wc -l < "monitor.log"` -ge `wc -l < "expout"`])
AT_CHECK(
[[sed '
--
2.12.2
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev