tests: Disable profiling for "wait-until must wait" test.
authorBen Pfaff <blp@nicira.com>
Thu, 15 Jul 2010 17:50:33 +0000 (10:50 -0700)
committerBen Pfaff <blp@nicira.com>
Wed, 21 Jul 2010 22:34:17 +0000 (15:34 -0700)
This test tends to break when run with lcov profiling since the lcov
wrapper script can't synchronize access to profiling data across all the
ovs-vsctl instances running in parallel.

tests/automake.mk
tests/lcov-wrapper.in
tests/ovs-vsctl.at

index 51205d9..48aa5aa 100644 (file)
@@ -92,7 +92,7 @@ LCOV = lcov -b $(abs_top_builddir) -d $(abs_top_builddir) -q
 check-lcov: all tests/atconfig tests/atlocal $(TESTSUITE) $(lcov_wrappers)
        rm -fr tests/coverage.html tests/coverage.info
        $(LCOV) -c -i -o - > tests/coverage.info
-       $(SHELL) '$(TESTSUITE)' -C tests CHECK_LCOV=true AUTOTEST_PATH='tests/lcov:$(AUTOTEST_PATH)' $(TESTSUITEFLAGS); \
+       $(SHELL) '$(TESTSUITE)' -C tests CHECK_LCOV=true DISABLE_LCOV=false AUTOTEST_PATH='tests/lcov:$(AUTOTEST_PATH)' $(TESTSUITEFLAGS); \
                rc=$$?; \
                echo "Producing coverage.html..."; \
                cd tests && genhtml -q -o coverage.html coverage.info; \
index 1981cda..0c6a359 100755 (executable)
@@ -31,6 +31,11 @@ fi
 PATH=$new_path
 export PATH
 
+if test "$DISABLE_LCOV" = true; then
+    exec $wrap_program "$@"
+    exit 1
+fi
+
 # XXX Probably want some kind of synchronization here to deal with
 # programs running in parallel.
 LCOV="lcov -b $abs_top_builddir -d $abs_top_builddir -q"
index fa882b0..061a4f4 100644 (file)
@@ -721,6 +721,12 @@ AT_CLEANUP
 
 AT_SETUP([database commands -- wait-until must wait])
 AT_KEYWORDS([ovs-vsctl])
+
+# Disable lcov for this test.  All the programs running in parallel
+# race badly on access to profiling data.
+DISABLE_LCOV=true
+export DISABLE_LCOV
+
 OVS_VSCTL_SETUP
 
 # Start ovs-vsctls in background.