Thread: [patch] PSQLDIR not passed to pg_regress in contrib/pg_upgrade/test.sh

[patch] PSQLDIR not passed to pg_regress in contrib/pg_upgrade/test.sh

From
Christoph Berg
Date:
"make check-world" in 9.3beta1 fails if you don't actually have 9.3
installed. In contrib/pg_upgrade/test.sh, it will try pg_regress
--psqldir=/usr/lib/postgresql/9.3/bin which doesn't exist.

+ /tmp/buildd/postgresql-9.3-9.3~beta1/build/contrib/pg_upgrade/tmp_check/install//usr/lib/postgresql/9.3/bin/pg_ctl
start-l /tmp/buildd/postgresql-9.3-9.3~beta1/build/contrib/pg_upgrade/log/postmaster1.log -o -F -c listen_addresses= -c
unix_socket_directories=/tmp-w 
waiting for server to start.... done
server started
+ make -C /tmp/buildd/postgresql-9.3-9.3~beta1/build installcheck
make[5]: Entering directory `/tmp/buildd/postgresql-9.3-9.3~beta1/build'
make -C src/test/regress installcheck
make[6]: Entering directory `/tmp/buildd/postgresql-9.3-9.3~beta1/build/src/test/regress'
make -C ../../../src/port all
make[7]: Entering directory `/tmp/buildd/postgresql-9.3-9.3~beta1/build/src/port'
make -C ../backend submake-errcodes
make[8]: Entering directory `/tmp/buildd/postgresql-9.3-9.3~beta1/build/src/backend'
make[8]: Nothing to be done for `submake-errcodes'.
make[8]: Leaving directory `/tmp/buildd/postgresql-9.3-9.3~beta1/build/src/backend'
make[7]: Leaving directory `/tmp/buildd/postgresql-9.3-9.3~beta1/build/src/port'
make -C ../../../src/common all
make[7]: Entering directory `/tmp/buildd/postgresql-9.3-9.3~beta1/build/src/common'
make -C ../backend submake-errcodes
make[8]: Entering directory `/tmp/buildd/postgresql-9.3-9.3~beta1/build/src/backend'
make[8]: Nothing to be done for `submake-errcodes'.
make[8]: Leaving directory `/tmp/buildd/postgresql-9.3-9.3~beta1/build/src/backend'
make[7]: Leaving directory `/tmp/buildd/postgresql-9.3-9.3~beta1/build/src/common'
rm -rf ./testtablespace
mkdir ./testtablespace
../../../src/test/regress/pg_regress --inputdir=/tmp/buildd/postgresql-9.3-9.3~beta1/build/../src/test/regress
--psqldir='/usr/lib/postgresql/9.3/bin'  --host=/tmp --dlpath=. --host=/tmp
--schedule=/tmp/buildd/postgresql-9.3-9.3~beta1/build/../src/test/regress/serial_schedule 
(using postmaster on Unix socket /tmp, default port)
============== dropping database "regression"         ==============
sh: 1: /usr/lib/postgresql/9.3/bin/psql: not found
command failed: "/usr/lib/postgresql/9.3/bin/psql" -X -c "DROP DATABASE IF EXISTS \"regression\"" "postgres"
make[6]: *** [installcheck] Error 2
make[6]: Leaving directory `/tmp/buildd/postgresql-9.3-9.3~beta1/build/src/test/regress'
make[5]: *** [installcheck] Error 2
make[5]: Leaving directory `/tmp/buildd/postgresql-9.3-9.3~beta1/build'
+ make_installcheck_status=2

Here's a patch to fix it.

Christoph
--
cb@df7cb.de | http://www.df7cb.de/

Attachment
On Tue, May 7, 2013 at 2:40 AM, Christoph Berg <cb@df7cb.de> wrote:
> "make check-world" in 9.3beta1 fails if you don't actually have 9.3
> installed. In contrib/pg_upgrade/test.sh, it will try pg_regress
> --psqldir=/usr/lib/postgresql/9.3/bin which doesn't exist.

I tried to reproduce this and couldn't.  The following already-exstant
chunk of code seems to be trying to cover the same issue:
   # We need to make it use psql from our temporary installation,   # because otherwise the installcheck run below
wouldtry to   # use psql from the proper installation directory, which might   # be outdated or missing. But don't
overrideanything else that's   # already in EXTRA_REGRESS_OPTS.   EXTRA_REGRESS_OPTS="$EXTRA_REGRESS_OPTS
--psqldir=$bindir"  export EXTRA_REGRESS_OPTS
 

If I comment out those last two lines, then I can reproduce the problem exactly.

I wonder why it's working differently for you.

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company



Re: [patch] PSQLDIR not passed to pg_regress in contrib/pg_upgrade/test.sh

From
Andrew Dunstan
Date:
On 05/10/2013 03:10 PM, Robert Haas wrote:
> On Tue, May 7, 2013 at 2:40 AM, Christoph Berg <cb@df7cb.de> wrote:
>> "make check-world" in 9.3beta1 fails if you don't actually have 9.3
>> installed. In contrib/pg_upgrade/test.sh, it will try pg_regress
>> --psqldir=/usr/lib/postgresql/9.3/bin which doesn't exist.
> I tried to reproduce this and couldn't.

I can confirm that it's working for me too.

cheers

andrew