diff options
author | Andres Freund <andres@anarazel.de> | 2019-05-23 14:46:57 -0700 |
---|---|---|
committer | Andres Freund <andres@anarazel.de> | 2019-05-23 14:46:57 -0700 |
commit | 5d91a9e8ac9cc6dc9d3695fcaa41132f2c4f0a89 (patch) | |
tree | 129ec6bbc56ff755839c9c9835cad4b18fa1ebd7 /src | |
parent | f7da492dca2a929045414aaf17f2e8cbf778df3d (diff) | |
download | postgresql-5d91a9e8ac9cc6dc9d3695fcaa41132f2c4f0a89.tar.gz postgresql-5d91a9e8ac9cc6dc9d3695fcaa41132f2c4f0a89.zip |
pg_upgrade: Make test.sh's installcheck use to-be-upgraded version's bindir.
On master (after 700538) the old version's installed psql was used -
even when the old version might not actually be installed / might be
installed into a temporary directory. As commonly the case when just
executing make check for pg_upgrade, as $oldbindir is just the current
version's $bindir.
In the back branches, with --install specified, psql from the new
version's temporary installation was used, without --install (e.g for
NO_TEMP_INSTALL, cf 47b3c26642), the new version's installed psql was
used (which might or might not exist).
Author: Andres Freund
Discussion: https://postgr.es/m/20190522175150.c26f4jkqytahajdg@alap3.anarazel.de
Diffstat (limited to 'src')
-rw-r--r-- | src/bin/pg_upgrade/test.sh | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/src/bin/pg_upgrade/test.sh b/src/bin/pg_upgrade/test.sh index f895663dc9f..400deb9b54c 100644 --- a/src/bin/pg_upgrade/test.sh +++ b/src/bin/pg_upgrade/test.sh @@ -86,14 +86,6 @@ if [ "$1" = '--install' ]; then SHLIB_PATH=$libdir:$SHLIB_PATH export SHLIB_PATH PATH=$libdir:$PATH - - # We need to make it use psql from our temporary installation, - # because otherwise the installcheck run below would try to - # use psql from the proper installation directory, which might - # be outdated or missing. But don't override anything else that's - # already in EXTRA_REGRESS_OPTS. - EXTRA_REGRESS_OPTS="$EXTRA_REGRESS_OPTS --bindir='$bindir'" - export EXTRA_REGRESS_OPTS fi : ${oldbindir=$bindir} @@ -102,6 +94,14 @@ fi oldsrc=`cd "$oldsrc" && pwd` newsrc=`cd ../../.. && pwd` +# We need to make pg_regress use psql from the desired installation +# (likely a temporary one), because otherwise the installcheck run +# below would try to use psql from the proper installation directory +# of the target version, which might be outdated or not exist. But +# don't override anything else that's already in EXTRA_REGRESS_OPTS. +EXTRA_REGRESS_OPTS="$EXTRA_REGRESS_OPTS --bindir='$oldbindir'" +export EXTRA_REGRESS_OPTS + PATH=$bindir:$PATH export PATH |