Make pg_regress.c unset PGDATABASE during make installcheck.

For the most part, we leave libpq-controlling environment variables
alone during "make installcheck", reasoning that connecting to the
server the user expects us to connect to may depend on those variables.
But that argument doesn't apply to PGDATABASE, since we always want
to connect to a specific database name within the server.  And failing
to unset it causes certain ECPG tests to fail, as various people have
complained of in the past.  So let's unset it.

Possibly this should be back-patched, but I'm disinclined to do that
right before 12.0 release.  Maybe later.

Discussion: https://postgr.es/m/20180318205548.2akxjqvo7hrk5wbc@alap3.anarazel.de
Discussion: https://postgr.es/m/E1bOum4-0002EA-2y@gemulon.postgresql.org
This commit is contained in:
Tom Lane 2019-09-27 18:19:37 -04:00
parent 3f6b3be39c
commit 5ee96b3e22
1 changed files with 8 additions and 0 deletions

View File

@ -861,6 +861,14 @@ initialize_environment(void)
if (user != NULL)
doputenv("PGUSER", user);
/*
* However, we *don't* honor PGDATABASE, since we certainly don't wish
* to connect to whatever database the user might like as default.
* (Most tests override PGDATABASE anyway, but there are some ECPG
* test cases that don't.)
*/
unsetenv("PGDATABASE");
/*
* Report what we're connecting to
*/