On Fri, Oct 12, 2018 at 12:17:57AM +0000, Michael Paquier wrote: > Add TAP tests for pg_verify_checksums > > All options available in the utility get coverage: > - Tests with disabled page checksums. > - Tests with enabled test checksums. > - Emulation of corruption and broken checksums with a full scan and > single relfilenode scan.
culicidae is failing after this commit in an interesting way, so we really needed some tests for this utility: https://buildfarm.postgresql.org/cgi-bin/show_history.pl?nm=culicidae&br=HEAD ok 7 - fails with corrupted data status (got 1 vs expected 1) not ok 8 - fails with corrupted data stdout /(?^:Bad checksums:.*1)/ # Failed test 'fails with corrupted data stdout /(?^:Bad checksums:.*1)/' # at t/002_actions.pl line 57. # '' # doesn't match '(?^:Bad checksums:.*1)' not ok 9 - fails with corrupted data stderr /(?^:checksum verification failed)/ So the checksum failure is happening, but the output is not present. What's not clear to me is that all the other hosts running Debian SID don't complain, and that the follow-up test on a single relfilenode is able to pass with a test much similar to the previous one. Is the issue that we should just call fflush() on stderr and stdout at the end of main() in pg_verify_checksum.c? Shouldn't we back-patch that? -- Michael
signature.asc
Description: PGP signature