Skip to content

Commit f916221

Browse files
committed
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 47b3c26), 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
1 parent 44e95b5 commit f916221

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

src/bin/pg_upgrade/test.sh

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,14 @@ temp_root=`pwd`/tmp_check
7676
oldsrc=`cd "$oldsrc" && pwd`
7777
newsrc=`cd ../../.. && pwd`
7878

79+
# We need to make pg_regress use psql from the desired installation
80+
# (likely a temporary one), because otherwise the installcheck run
81+
# below would try to use psql from the proper installation directory
82+
# of the target version, which might be outdated or not exist. But
83+
# don't override anything else that's already in EXTRA_REGRESS_OPTS.
84+
EXTRA_REGRESS_OPTS="$EXTRA_REGRESS_OPTS --bindir='$oldbindir'"
85+
export EXTRA_REGRESS_OPTS
86+
7987
# While in normal cases this will already be set up, adding bindir to
8088
# path allows test.sh to be invoked with different versions as
8189
# described in ./TESTING

0 commit comments

Comments
 (0)