aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2015-07-07 12:49:18 -0400
committerTom Lane <tgl@sss.pgh.pa.us>2015-07-07 12:49:18 -0400
commit9a8f58331067e18a5dc10670e687f21ae6a2172e (patch)
treed57a1c845114c3e0010766e0728af65828417c65 /src
parent414bef30bfab20451e15fe799642b52166db8c34 (diff)
downloadpostgresql-9a8f58331067e18a5dc10670e687f21ae6a2172e.tar.gz
postgresql-9a8f58331067e18a5dc10670e687f21ae6a2172e.zip
Fix portability issue in pg_upgrade test script: avoid $PWD.
SUSv2-era shells don't set the PWD variable, though anything more modern does. In the buildfarm environment this could lead to test.sh executing with PWD pointing to $HOME or another high-level directory, so that there were conflicts between concurrent executions of the test in different branch subdirectories. This appears to be the explanation for recent intermittent failures on buildfarm members binturong and dingo (and might well have something to do with the buildfarm script's failure to capture log files from pg_upgrade tests, too). To fix, just use `pwd` in place of $PWD. AFAICS test.sh is the only place in our source tree that depended on $PWD. Back-patch to all versions containing this script. Per buildfarm. Thanks to Oskari Saarenmaa for diagnosing the problem.
Diffstat (limited to 'src')
-rw-r--r--src/bin/pg_upgrade/test.sh5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/bin/pg_upgrade/test.sh b/src/bin/pg_upgrade/test.sh
index fef64dfb5f8..07002f6a165 100644
--- a/src/bin/pg_upgrade/test.sh
+++ b/src/bin/pg_upgrade/test.sh
@@ -62,7 +62,8 @@ esac
POSTMASTER_OPTS="-F -c listen_addresses=$LISTEN_ADDRESSES -k \"$PGHOST\""
export PGHOST
-temp_root=$PWD/tmp_check
+# don't rely on $PWD here, as old shells don't set it
+temp_root=`pwd`/tmp_check
if [ "$1" = '--install' ]; then
temp_install=$temp_root/install
@@ -104,7 +105,7 @@ PGDATA="$BASE_PGDATA.old"
export PGDATA
rm -rf "$BASE_PGDATA" "$PGDATA"
-logdir=$PWD/log
+logdir=`pwd`/log
rm -rf "$logdir"
mkdir "$logdir"