Further tweaks to stuck_on_old_timeline recovery test

Translate path slashes on target directory path. This was confusing old
branches, but is applied to all branches for the sake of uniformity.
Perl is perfectly able to understand paths with forward slashes.

Along the way, restore the previous archive_wait query, for the sake of
uniformity with other tests, per gripe from Tom Lane.
This commit is contained in:
Andrew Dunstan 2021-06-13 07:10:41 -04:00
parent 15cb0bf471
commit 8cb3d95c20
No known key found for this signature in database
GPG Key ID: 99FA7FCB59FC3B81

View File

@ -31,6 +31,7 @@ if ($^O eq 'msys')
}
$perlbin =~ s!\\!/!g if $TestLib::windows_os;
my $archivedir_primary = $node_primary->archive_dir;
$archivedir_primary =~ s!\\!/!g if $TestLib::windows_os;
$node_primary->append_conf('postgresql.conf', qq(
archive_command = '"$perlbin" "$FindBin::RealBin/cp_history_files" "%p" "$archivedir_primary/%f"'
wal_keep_segments=8
@ -81,8 +82,7 @@ $node_standby->safe_psql('postgres', 'SELECT pg_switch_wal()');
# WAL segment, this is enough to guarantee that the history file was
# archived.
my $archive_wait_query =
"SELECT coalesce('$walfile_to_be_archived' <= last_archived_wal, false) " .
"FROM pg_stat_archiver";
"SELECT '$walfile_to_be_archived' <= last_archived_wal FROM pg_stat_archiver";
$node_standby->poll_query_until('postgres', $archive_wait_query)
or die "Timed out while waiting for WAL segment to be archived";
my $last_archived_wal_file = $walfile_to_be_archived;