git.postgresql.org Git - postgresql.git/commitdiff

git projects / postgresql.git / commitdiff
? search:
summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: f0cce9f)
Fix some issues with TAP tests of pg_basebackup and pg_verify_checksums
2019年2月18日 05:23:30 +0000 (14:23 +0900)
2019年2月18日 05:23:30 +0000 (14:23 +0900)
ee9e145 has fixed the tests of pg_basebackup for checksums a first time,
still one seek() call missed the shot. Also, the data written in files
to emulate corruptions was not actually writing zeros as the quoting
style was incorrect.

Backpatch the portion for pg_basebackup to v11 where these tests have
been introduced. The tests of pg_verify_checksums are new as of v12.

Author: Michael Banck
Discussion: https://postgr.es/m/1550153276.796.35.camel@credativ.de
Backpatch-through: 11


diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl
index 3e1c3863c4fe1f4e66b6869e129ae70502db688a..33869fecc975864886a978fc4a5f48c273688f10 100644 (file)
--- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl
+++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl
@@ -499,7 +499,7 @@ my $block_size = $node->safe_psql('postgres', 'SHOW block_size;');
system_or_bail 'pg_ctl', '-D', $pgdata, 'stop';
open $file, '+<', "$pgdata/$file_corrupt1";
seek($file, $pageheader_size, 0);
-syswrite($file, '0円0円0円0円0円0円0円0円0円');
+syswrite($file, "0円0円0円0円0円0円0円0円0円");
close $file;
system_or_bail 'pg_ctl', '-D', $pgdata, 'start';
@@ -518,7 +518,7 @@ for my $i (1 .. 5)
{
my $offset = $pageheader_size + $i * $block_size;
seek($file, $offset, 0);
- syswrite($file, '0円0円0円0円0円0円0円0円0円');
+ syswrite($file, "0円0円0円0円0円0円0円0円0円");
}
close $file;
system_or_bail 'pg_ctl', '-D', $pgdata, 'start';
@@ -534,8 +534,8 @@ rmtree("$tempdir/backup_corrupt2");
# induce corruption in a second file
system_or_bail 'pg_ctl', '-D', $pgdata, 'stop';
open $file, '+<', "$pgdata/$file_corrupt2";
-seek($file, 4000, 0);
-syswrite($file, '0円0円0円0円0円0円0円0円0円');
+seek($file, $pageheader_size, 0);
+syswrite($file, "0円0円0円0円0円0円0円0円0円");
close $file;
system_or_bail 'pg_ctl', '-D', $pgdata, 'start';
diff --git a/src/bin/pg_verify_checksums/t/002_actions.pl b/src/bin/pg_verify_checksums/t/002_actions.pl
index 5250b5a72863304d3286e402cb53e0140c19e056..74ad5ad7235cc66dd8358dee12e3c1b98fdebc61 100644 (file)
--- a/src/bin/pg_verify_checksums/t/002_actions.pl
+++ b/src/bin/pg_verify_checksums/t/002_actions.pl
@@ -45,7 +45,7 @@ sub check_relation_corruption
# Time to create some corruption
open my $file, '+<', "$pgdata/$file_corrupted";
seek($file, $pageheader_size, 0);
- syswrite($file, '0円0円0円0円0円0円0円0円0円');
+ syswrite($file, "0円0円0円0円0円0円0円0円0円");
close $file;
# Checksum checks on single relfilenode fail
This is the main PostgreSQL git repository.
RSS Atom

AltStyle によって変換されたページ (->オリジナル) /