summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNoah Misch <noah@leadboat.com>2019-05-28 12:58:30 -0700
committerNoah Misch <noah@leadboat.com>2019-05-28 12:58:34 -0700
commit8e2b41ecf8acaf36208fafec4a01ffad04fb69a2 (patch)
tree8dc3c68d6a39f3388c9e0e7232b1bd8f28b3b578
parent9ba3915ab6d27c555a80a6e2212cafb804372cb5 (diff)
In the pg_upgrade test suite, remove and recreate "tmp_check".
This allows "vcregress upgradecheck" to pass twice in immediate succession, and it's more like how $(prove_check) works. Back-patch to 9.5, where pg_upgrade moved to src/bin. Discussion: https://postgr.es/m/20190520012436.GA1480421@rfd.leadboat.com
-rw-r--r--src/bin/pg_upgrade/test.sh3
-rw-r--r--src/tools/msvc/vcregress.pl6
2 files changed, 6 insertions, 3 deletions
diff --git a/src/bin/pg_upgrade/test.sh b/src/bin/pg_upgrade/test.sh
index 006fde3f6ce..c1ca600a9a4 100644
--- a/src/bin/pg_upgrade/test.sh
+++ b/src/bin/pg_upgrade/test.sh
@@ -66,6 +66,8 @@ export PGHOST
# don't rely on $PWD here, as old shells don't set it
temp_root=`pwd`/tmp_check
+rm -rf "$temp_root"
+mkdir "$temp_root"
if [ "$1" = '--install' ]; then
temp_install=$temp_root/install
@@ -106,7 +108,6 @@ export PATH
BASE_PGDATA=$temp_root/data
PGDATA="$BASE_PGDATA.old"
export PGDATA
-rm -rf "$BASE_PGDATA" "$PGDATA"
logdir=`pwd`/log
rm -rf "$logdir"
diff --git a/src/tools/msvc/vcregress.pl b/src/tools/msvc/vcregress.pl
index e0e430abe8c..a482260e56d 100644
--- a/src/tools/msvc/vcregress.pl
+++ b/src/tools/msvc/vcregress.pl
@@ -501,7 +501,8 @@ sub upgradecheck
$ENV{PGHOST} = 'localhost';
$ENV{PGPORT} ||= 50432;
my $tmp_root = "$topdir/src/bin/pg_upgrade/tmp_check";
- (mkdir $tmp_root || die $!) unless -d $tmp_root;
+ rmtree($tmp_root);
+ mkdir $tmp_root || die $!;
my $upg_tmp_install = "$tmp_root/install"; # unshared temp install
print "Setting up temp install\n\n";
Install($upg_tmp_install, "all", $config);
@@ -514,7 +515,8 @@ sub upgradecheck
my $data = "$tmp_root/data";
$ENV{PGDATA} = "$data.old";
my $logdir = "$topdir/src/bin/pg_upgrade/log";
- (mkdir $logdir || die $!) unless -d $logdir;
+ rmtree($logdir);
+ mkdir $logdir || die $!;
print "\nRunning initdb on old cluster\n\n";
standard_initdb() or exit 1;
print "\nStarting old cluster\n\n";