Hello, this is just an entry mail for the next CF. The tap-test fails when the soruce directoy containing spaces. I accidentially hit this by a Jenkins project with the name "test project".
The function system_log() is safe for such parameters but backup() uses it in wrong way. On the other hand, enable_restoring() and enable_archiving() forgets to quote such a path containing spaces as already done for Windows. I don't see the similar problem in other places. regards, -- Kyotaro Horiguchi NTT Open Source Software Center
>From 4c38a3e95da1abb5360a80b9ad646c9c6309bd9b Mon Sep 17 00:00:00 2001 From: Kyotaro Horiguchi <horiguchi.kyot...@lab.ntt.co.jp> Date: Mon, 4 Jul 2016 15:18:51 +0900 Subject: [PATCH] Allow spaces in working directory path on TAP-tests. Several tap tests fails when the soruce directory path is containing spaces. This patch fixes it. --- src/test/perl/PostgresNode.pm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index 636dfec..5767919 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -475,7 +475,8 @@ sub backup my $name = $self->name; print "# Taking pg_basebackup $backup_name from node \"$name\"\n"; - TestLib::system_or_bail("pg_basebackup -D $backup_path -p $port -x"); + TestLib::system_or_bail('pg_basebackup', '-D', $backup_path, + '-p', $port, '-x'); print "# Backup finished\n"; } @@ -763,7 +764,7 @@ sub enable_restoring my $copy_command = $TestLib::windows_os ? qq{copy "$path\\\\%f" "%p"} - : qq{cp $path/%f %p}; + : qq{cp "$path/%f" "%p"}; $self->append_conf( 'recovery.conf', qq( @@ -791,7 +792,7 @@ sub enable_archiving my $copy_command = $TestLib::windows_os ? qq{copy "%p" "$path\\\\%f"} - : qq{cp %p $path/%f}; + : qq{cp "%p" "$path/%f"}; # Enable archive_mode and archive_command on node $self->append_conf( -- 1.8.3.1
-- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers