diff mbox series

[ovs-dev] tests: Allow only 1 job at once during recheck (RECHECK=yes)

Message ID bcf0f0eeb5717331564319414bf6be4607ea87b0.1522762708.git.tredaelli@redhat.com
State Accepted
Headers show
Series [ovs-dev] tests: Allow only 1 job at once during recheck (RECHECK=yes) | expand

Commit Message

Timothy Redaelli April 3, 2018, 1:38 p.m. UTC
Currently some tests fails if run with multiple jobs at once, so
this commit disables parallel jobs during the recheck phase.

Signed-off-by: Timothy Redaelli <tredaelli@redhat.com>
---
 tests/automake.mk | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Ben Pfaff April 3, 2018, 6:06 p.m. UTC | #1
On Tue, Apr 03, 2018 at 03:38:28PM +0200, Timothy Redaelli wrote:
> Currently some tests fails if run with multiple jobs at once, so
> this commit disables parallel jobs during the recheck phase.
> 
> Signed-off-by: Timothy Redaelli <tredaelli@redhat.com>

I think that this is a useful patch.

To clarify, though, do you see some tests that always fail when run in
parallel?  That would be new to me, and I'd place a higher priority on
fixing it.  I do see that some tests are more likely to fail that way.
Timothy Redaelli April 4, 2018, 12:22 p.m. UTC | #2
On Tue, 3 Apr 2018 11:06:02 -0700
Ben Pfaff <blp@ovn.org> wrote:

> On Tue, Apr 03, 2018 at 03:38:28PM +0200, Timothy Redaelli wrote:
> > Currently some tests fails if run with multiple jobs at once, so
> > this commit disables parallel jobs during the recheck phase.
> > 
> > Signed-off-by: Timothy Redaelli <tredaelli@redhat.com>  
> 
> I think that this is a useful patch.
> 
> To clarify, though, do you see some tests that always fail when run in
> parallel?  That would be new to me, and I'd place a higher priority on
> fixing it.  I do see that some tests are more likely to fail that way.

Some tests fails often than other tests (when run in multiple jobs), so
rarely (on a big machine, with 32 cores and by using -j32) a test
fails twice and so make check RECHECK=yes fails.
This patch only avoid this rare failure that can be annoying if you are
releasing a new package (on Fedora or RHEL for example) since you need
to re-build all the architectures only for a false positive on a
single architecture.
Ben Pfaff April 4, 2018, 5:41 p.m. UTC | #3
On Wed, Apr 04, 2018 at 02:22:25PM +0200, Timothy Redaelli wrote:
> On Tue, 3 Apr 2018 11:06:02 -0700
> Ben Pfaff <blp@ovn.org> wrote:
> 
> > On Tue, Apr 03, 2018 at 03:38:28PM +0200, Timothy Redaelli wrote:
> > > Currently some tests fails if run with multiple jobs at once, so
> > > this commit disables parallel jobs during the recheck phase.
> > > 
> > > Signed-off-by: Timothy Redaelli <tredaelli@redhat.com>  
> > 
> > I think that this is a useful patch.
> > 
> > To clarify, though, do you see some tests that always fail when run in
> > parallel?  That would be new to me, and I'd place a higher priority on
> > fixing it.  I do see that some tests are more likely to fail that way.
> 
> Some tests fails often than other tests (when run in multiple jobs), so
> rarely (on a big machine, with 32 cores and by using -j32) a test
> fails twice and so make check RECHECK=yes fails.
> This patch only avoid this rare failure that can be annoying if you are
> releasing a new package (on Fedora or RHEL for example) since you need
> to re-build all the architectures only for a false positive on a
> single architecture.

I've seen that in Debian, too.  It has more architectures so it can be
worse.

Thanks for clarifying.  I added that information to the commit message
and applied this to master.  If it would help to backport to branch-2.9,
let me know.
diff mbox series

Patch

diff --git a/tests/automake.mk b/tests/automake.mk
index 780d3b830..c345d5208 100644
--- a/tests/automake.mk
+++ b/tests/automake.mk
@@ -141,7 +141,7 @@  AUTOTEST_PATH = utilities:vswitchd:ovsdb:vtep:tests:$(PTHREAD_WIN32_DIR_DLL):$(S
 
 check-local:
 	set $(SHELL) '$(TESTSUITE)' -C tests AUTOTEST_PATH=$(AUTOTEST_PATH) $(TESTSUITEFLAGS); \
-	"$$@" || (test X'$(RECHECK)' = Xyes && "$$@" --recheck)
+	"$$@" || (test X'$(RECHECK)' = Xyes && "$$@" -j1 --recheck)
 
 # Python Coverage support.
 # Requires coverage.py http://nedbatchelder.com/code/coverage/.
@@ -169,7 +169,7 @@  GENHTML_OPTS = -q --branch-coverage --num-spaces 4
 check-lcov: all $(check_DATA) clean-lcov
 	find . -name '*.gcda' | xargs -n1 rm -f
 	-set $(SHELL) '$(TESTSUITE)' -C tests AUTOTEST_PATH=$(AUTOTEST_PATH) $(TESTSUITEFLAGS); \
-	"$$@" || (test X'$(RECHECK)' = Xyes && "$$@" --recheck)
+	"$$@" || (test X'$(RECHECK)' = Xyes && "$$@" -j1 --recheck)
 	$(MKDIR_P) tests/lcov
 	lcov $(LCOV_OPTS) -o tests/lcov/coverage.info
 	genhtml $(GENHTML_OPTS) -o tests/lcov tests/lcov/coverage.info