Re: make installcheck-world in a clean environment

Alexander Law <exclusion@gmail.com>

From: Alexander Lakhin <exclusion@gmail.com>
To: pgsql-hackers@postgresql.org
Date: 2018-04-06T06:19:01Z
Lists: pgsql-hackers

Attachments

02.04.2018 12:12, Alexander Lakhin wrote:
>
> Is it a supported scenario to make installcheck-world without 
> performing "make" first?
> (If I do "make -C src/interfaces/ecpg" and then "make 
> installcheck-world", then this error is gone. And when I set up all 
> the extensions, all tests passed successfully.)
> And even if we need to perform make, I wonder, should the recompiled 
> ecpg binary be checked instead of installed one?
> I tried to modify Makefile to target installed ecpg binary and it's 
> libs (see the patch attached), it works, but this fix is only suited 
> for installcheck.
> So if this scenario should be supported, a more elaborated fix is needed.
To avoid overheating of this pretty hot discussion, I would like just to 
propose "a more elaborated fix" (for REL_10_STABLE and master).
In fact, when we perform "make installcheck" it not only requires us to 
build ecpg, but it also rebuilds libpostgres, libpgport and libpq (for 
installcheck-world).
I believe that the larger testing surface (coverage), the better, so 
using installed assets (libs, headers) is more useful.

Regarding "remote installcheck", that was discussed recently, the 
proposed patch complicates this, but opens a way to implement it correctly.
Think of distinct target "remotecheck", that will not define 
USE_INSTALLED_ASSETS, but will account for remote connection to server 
and run only supported tests.

Best regards,
------
Alexander Lakhin
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company

Commits

  1. Ensure we build generated headers at the start of some more cases.