From: Andrew Dunstan Date: Sun, 23 Apr 2017 13:21:38 +0000 (-0400) Subject: Fix TAP infrastructure to support Mingw better X-Git-Tag: REL_10_BETA1~203 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=33f3bbc6d37dde23f02cb1f73753791fb9e6c4a8;p=postgresql Fix TAP infrastructure to support Mingw better archive_command and restore_command need to refer to Windows paths, not Msys virtual file system paths, as postgres is completely unaware of the latter, so prefix them with the Windows path to the virtual file system root. Clean psql and pg_recvlogical output of carriage returns. --- diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e42eb88896..51cbec8e5d 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -101,6 +101,15 @@ our @EXPORT = qw( our ($test_localhost, $test_pghost, $last_port_assigned, @all_nodes); +# Windows path to virtual file system root + +our $vfs_path = ''; +if ($Config{osname} eq 'msys') +{ + $vfs_path = `cd / && pwd -W`; + chomp $vfs_path; +} + INIT { @@ -763,7 +772,7 @@ standby_mode=on sub enable_restoring { my ($self, $root_node) = @_; - my $path = $root_node->archive_dir; + my $path = $vfs_path . $root_node->archive_dir; my $name = $self->name; print "### Enabling WAL restore for node \"$name\"\n"; @@ -791,7 +800,7 @@ standby_mode = on sub enable_archiving { my ($self) = @_; - my $path = $self->archive_dir; + my $path = $vfs_path . $self->archive_dir; my $name = $self->name; print "### Enabling WAL archiving for node \"$name\"\n"; @@ -979,6 +988,7 @@ sub safe_psql print "\n#### End standard error\n"; } + $stdout =~ s/\r//g if $TestLib::windows_os; return $stdout; } @@ -1579,6 +1589,9 @@ sub pg_recvlogical_upto } }; + $stdout =~ s/\r//g if $TestLib::windows_os; + $stderr =~ s/\r//g if $TestLib::windows_os; + if (wantarray) { return ($ret, $stdout, $stderr, $timeout);