[ovs-dev] [PATCH] tests: Make ovsdb test more robust and faster.

Jarno Rajahalme jarno at ovn.org
Thu Jul 21 13:22:18 UTC 2016


Using sleep's is prone to runtime system dependent races, and indeed
this test started consistently failing on my dev VM after an unrelated
change to ovs-vswitchd.  Get git of the sleeps and explicitly wait for
the transaction on ovsdb1 to become visible on ovsdb2.

Also fix the name of the test.

Signed-off-by: Jarno Rajahalme <jarno at ovn.org>
---
 tests/ovsdb-server.at | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/tests/ovsdb-server.at b/tests/ovsdb-server.at
index 2f2ef99..baf253a 100644
--- a/tests/ovsdb-server.at
+++ b/tests/ovsdb-server.at
@@ -1213,7 +1213,7 @@ OVSDB_SERVER_SHUTDOWN2
 AT_CLEANUP
 
 #ovsdb-server/disconnect-remote-server command
-AT_SETUP([ovsbd-server/disconnect-remote-server])
+AT_SETUP([ovsdb-server/disconnect-remote-server])
 AT_KEYWORDS([ovsdb server replication disconnect-remote-server])
 replication_schema > schema
 AT_CHECK([ovsdb-tool create db1 schema], [0], [stdout], [ignore])
@@ -1231,7 +1231,8 @@ AT_CHECK([ovsdb-client transact tcp:127.0.0.1:$TCP_PORT1 \
    "table": "a",
    "row": {"number": 0, "name": "zero"}}]]'], [0], [stdout], [ignore],
 [test ! -e pid || kill `cat pid`; test ! -e pid2 || kill `cat pid2`])
-sleep 2
+
+OVS_WAIT_UNTIL([ovsdb-client dump tcp:127.0.0.1:$TCP_PORT2 | grep zero])
 
 AT_CHECK([ovs-appctl -t "`pwd`"/unixctl2 ovsdb-server/disconnect-remote-ovsdb-server], [0], [ignore], [ignore],
         [test ! -e pid || kill `cat pid`; test ! -e pid2 || kill `cat pid2`])
@@ -1242,7 +1243,6 @@ AT_CHECK([ovsdb-client transact tcp:127.0.0.1:$TCP_PORT1 \
    "table": "b",
    "row": {"number": 1, "name": "one"}}]]'], [0], [stdout], [ignore],
 [test ! -e pid || kill `cat pid`; test ! -e pid2 || kill `cat pid2`])
-sleep 2
 
 AT_CHECK([ovsdb-client dump tcp:127.0.0.1:$TCP_PORT1], [0], [stdout], [ignore],
  [test ! -e pid || kill `cat pid`; test ! -e pid2 || kill `cat pid2`])
-- 
2.1.4




More information about the dev mailing list