postgresql/src/bin/pg_amcheck
Peter Eisentraut e7d0cf42b1 Allow TAP tests to force checksums off when calling init()
TAP tests can write

    $node->init(no_data_checksums => 1);

to initialize a cluster explicitly without checksums.  Currently, this
is the default, but this change allows running all tests with
checksums enabled, like

    PG_TEST_INITDB_EXTRA_OPTS=--data-checksums meson test ...

And this also prepares the tests for when we switch the default to
checksums enabled.

The pg_checksums tests need to disable checksums so it can test its
own functionality of enabling checksums.  The amcheck/pg_amcheck tests
need to disable checksums because they manually introduce corruption
that they want to detect, but with checksums enabled, the checksum
verification will fail before they even get to their work.

Author: Greg Sabino Mullane <greg@turnstep.com>
Reviewed-by: Nathan Bossart <nathandbossart@gmail.com>
Reviewed-by: Peter Eisentraut <peter@eisentraut.org>
Discussion: https://www.postgresql.org/message-id/flat/CAKAnmmKwiMHik5AHmBEdf5vqzbOBbcwEPHo4-PioWeAbzwcTOQ@mail.gmail.com
2024-10-14 11:25:03 +02:00
..
po Translation updates 2024-06-24 13:11:27 +02:00
t Allow TAP tests to force checksums off when calling init() 2024-10-14 11:25:03 +02:00
.gitignore Add pg_amcheck, a CLI for contrib/amcheck. 2021-03-12 13:00:01 -05:00
Makefile Update copyright for 2024 2024-01-03 20:49:05 -05:00
meson.build Update copyright for 2024 2024-01-03 20:49:05 -05:00
nls.mk Add missing source files to nls.mk 2024-06-13 10:17:36 +02:00
pg_amcheck.c Message style improvements 2024-08-27 16:54:10 +02:00
README Doc: improve README files associated with TAP tests. 2021-10-31 18:12:44 -04:00

src/bin/pg_amcheck/README

pg_amcheck is a command-line tool for running the amcheck extension.

Running the regression tests
============================

NOTE: You must have given the --enable-tap-tests argument to configure.
Also, to use "make installcheck", you must have built and installed
contrib/amcheck and contrib/pageinspect in addition to the core code.

Run
    make check
or
    make installcheck
You can use "make installcheck" if you previously did "make install".
In that case, the code in the installation tree is tested.  With
"make check", a temporary installation tree is built from the current
sources and then tested.

See src/test/perl/README for more info about running these tests.