Re: Add .NOTPARALLEL to contrib/Makefile - Mailing list pgsql-hackers

From Andres Freund
Subject Re: Add .NOTPARALLEL to contrib/Makefile
Date
Msg-id 20140826005719.GD21544@awork2.anarazel.de
Whole thread Raw
In response to Re: Add .NOTPARALLEL to contrib/Makefile  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
On 2014-08-25 20:16:50 -0400, Tom Lane wrote:
> Andres Freund <andres@2ndquadrant.com> writes:
> > Currently running "make -j16 all check" in contrib/ results in a mess because
> > all pg_regress invocations fight over the same port. Adding a simple
> > .NOTPARALLEL: check-%-recurse
> > into contrib/Makefile fixes that. Do we want that?
>
> Dunno, but if we do, it should be applied to installcheck as well.
> (In that case the fight is over the contrib_regression database.)

Right. Although you can mostly fight it there using USE_MODULE_DB.

The attached patch that replaces all hardcoded occurrences of
'contrib_regression' with current_database(). Allowing a make -j32 -s
installcheck in contrib to succeed in less than 4 seconds...

That's not particularly pretty, especially in the CREATE SERVER calls
(via DO ... EXECUTE), but imo worth it given the timesavings.

What's your thought on that one?

> A larger point is that you shouldn't really fix this only for contrib.
> What about tests run in src/pl, or contrib vs the main regression tests
> vs src/pl vs test/isolationtester, etc etc.

Unfortunately I don't think you can make .NOTPARALLEL work across more
than one directory when using recursive make :(. At least I don't know
how.

Greetings,

Andres Freund

--
 Andres Freund                       http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services

Attachment

pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: What in the world is happening with castoroides and protosciurus?
Next
From: Peter Eisentraut
Date:
Subject: Re: improving speed of make check-world