From 5ee96b3e2221d154ffcb719bd2dee1179c53f821 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Fri, 27 Sep 2019 18:19:37 -0400 Subject: [PATCH] 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 --- src/test/regress/pg_regress.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c index b4045abf21..3a39472108 100644 --- a/src/test/regress/pg_regress.c +++ b/src/test/regress/pg_regress.c @@ -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 */