Subject: Re: 002_pg_upgrade is broken for custom install

From: Álvaro Herrera <[email-masked]>
Date: Fri, 4 Apr 2025 13:53:11 +0200

On 2025-Apr-04, Ashutosh Bapat wrote:

> connection error: 'psql: error: connection to server on socket
> "/tmp/LiPa_UJpSb/.s.PGSQL.13779" failed: FATAL: database "regression"
> does not exist'
> while running '/home/ashutosh/work/units/pghead/build/dev/bin/psql
> --no-psqlrc --no-align --tuples-only --quiet --dbname port=13779
> host=/tmp/LiPa_UJpSb dbname='regression' --file - --variable
> ON_ERROR_STOP=1' at
> /home/ashutosh/work/units/pghead/coderoot/pg/src/test/perl/PostgreSQL/Test/Cluster.pm
> line 2256.
> # Postmaster PID for node "old_node" is 779230
> ### Stopping node "old_node" using mode immediate

This is saying that Cluster->psql() (line 2256) tried to connect to
database regression and failed unexpectedly.  Is your "olddump" file
created with pg_dumpall from a cluster that contains such a database?
If not, then the test isn't broken, you're just not operating it
correctly :-)

Maybe the failure could be clearer: rather than blindly trying to
connect to regression, first see if it exists, and die with a hard
failure ("your old dump must contain database regression") if not.
Alternatively, if the regression database doesn't exist, just skip that
part.

-- 
Álvaro Herrera        Breisgau, Deutschland  —  https://www.EnterpriseDB.com/