Re: TAP test breakage on MacOS X

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Peter Eisentraut <peter_e(at)gmx(dot)net>
Cc: Andrew Dunstan <andrew(at)dunslane(dot)net>, Robert Haas <robertmhaas(at)gmail(dot)com>, "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: TAP test breakage on MacOS X
Date: 2014-10-31 03:25:13
Message-ID: 17865.1414725913@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Peter Eisentraut <peter_e(at)gmx(dot)net> writes:
> On 10/7/14 1:57 PM, Tom Lane wrote:
>> Peter had a patch to eliminate the overhead of multiple subinstalls;
>> not sure where that stands, but presumably it would address your issue.

> It will need some cleverness to sort out the parallel make issues that
> were brought up in the review thread.

I took a quick look. I concur with Fabien that the dependency on
MAKELEVEL seems pretty horrid: in particular, will that not break the
ability to initiate "make check" from somewhere below the top directory?

I wonder whether it could be solved by having code in the toplevel
Makefile that actually makes the test install tree, and not as a .PHONY
target but along the lines of

tmp-install-stamp:
rm -rf tmp_install # in case we failed during a previous attempt
$(MKDIR_P) tmp_install/log
$(MAKE) ... etc etc ...
touch tmp-install-stamp

and then also at top level, put tmp-install-stamp as a prerequisite
for check-world, and then in every subdirectory that has a check
target, add something like

$(abs_top_builddir)/tmp-install-stamp:
$(MAKE) -C $(abs_top_builddir) tmp-install-stamp

check: $(abs_top_builddir)/tmp-install-stamp

The way this solves the parallel make problem is that no matter
where you invoke "make check", the first thing it would have to
do is create the tmp_install directory if it's not done already,
before it can launch any parallel operations. Or at least I hope
it'd work like that; I've not actually tried it.

Possibly some of these rules could be kept in Makefile.global
so as to avoid having to touch so many individual Makefiles.

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Noah Misch 2014-10-31 03:45:19 Re: infinite loop in _bt_getstackbuf
Previous Message Peter Eisentraut 2014-10-31 03:14:04 Re: pg_basebackup fails with long tablespace paths