aboutsummaryrefslogtreecommitdiff
path: root/src/tools/msvc/vcregress.pl
diff options
context:
space:
mode:
Diffstat (limited to 'src/tools/msvc/vcregress.pl')
-rw-r--r--src/tools/msvc/vcregress.pl18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/tools/msvc/vcregress.pl b/src/tools/msvc/vcregress.pl
index 2aa29ab008c..9fd5f232ec6 100644
--- a/src/tools/msvc/vcregress.pl
+++ b/src/tools/msvc/vcregress.pl
@@ -102,6 +102,13 @@ exit 0;
sub installcheck
{
my $schedule = shift || 'serial';
+ installcheck_internal $schedule;
+ return;
+}
+
+sub installcheck_internal
+{
+ my ($schedule, @EXTRA_REGRESS_OPTS) = @_;
my @args = (
"../../../$Config/pg_regress/pg_regress",
"--dlpath=.",
@@ -111,6 +118,7 @@ sub installcheck
"--encoding=SQL_ASCII",
"--no-locale");
push(@args, $maxconn) if $maxconn;
+ push(@args, @EXTRA_REGRESS_OPTS);
system(@args);
my $status = $? >> 8;
exit $status if $status;
@@ -558,6 +566,14 @@ sub upgradecheck
$ENV{PATH} = "$bindir;$ENV{PATH}";
my $data = "$tmp_root/data";
$ENV{PGDATA} = "$data.old";
+ my $outputdir = "$tmp_root/regress";
+ my @EXTRA_REGRESS_OPTS = ("--outputdir=$outputdir");
+ rmtree("$outputdir");
+ mkdir "$outputdir" || die $!;
+ mkdir "$outputdir/sql" || die $!;
+ mkdir "$outputdir/expected" || die $!;
+ mkdir "$outputdir/testtablespace" || die $!;
+
my $logdir = "$topdir/src/bin/pg_upgrade/log";
(mkdir $logdir || die $!) unless -d $logdir;
print "\nRunning initdb on old cluster\n\n";
@@ -572,7 +588,7 @@ sub upgradecheck
generate_db('', 91, 127, '');
print "\nSetting up data for upgrading\n\n";
- installcheck('parallel');
+ installcheck_internal('parallel', @EXTRA_REGRESS_OPTS);
# now we can chdir into the source dir
chdir "$topdir/src/bin/pg_upgrade";