Skip to content

Commit c442155

Browse files
doc: document the TAP test environment variables
The TAP tests can, to some degree, be controlled by a set of environment variables. These were however only documented in a README and not in the main documentation. This adds documentation of these variables, as well as changes one CPAN reference to a ulink for consistency. While there, also tag CPAN as an acronym as it's listed in the acronyms section. Reviewed-by: Michael Paquier <michael@paquier.xyz> Discussion: https://postgr.es/m/YyPd9unV14SX2bLF@paquier.xyz
1 parent 5f80cd2 commit c442155

File tree

2 files changed

+34
-2
lines changed

2 files changed

+34
-2
lines changed

doc/src/sgml/install-windows.sgml

+7-1
Original file line numberDiff line numberDiff line change
@@ -487,7 +487,8 @@ $ENV{CONFIG}="Debug";
487487
As of this writing, <literal>IPC::Run</literal> is not included in the
488488
ActiveState Perl installation, nor in the ActiveState Perl Package
489489
Manager (PPM) library. To install, download the
490-
<filename>IPC-Run-&lt;version&gt;.tar.gz</filename> source archive from CPAN,
490+
<filename>IPC-Run-&lt;version&gt;.tar.gz</filename> source archive from
491+
<acronym>CPAN</acronym>,
491492
at <ulink url="https://metacpan.org/dist/IPC-Run"></ulink>, and
492493
uncompress. Edit the <filename>buildenv.pl</filename> file, and add a PERL5LIB
493494
variable to point to the <filename>lib</filename> subdirectory from the
@@ -518,6 +519,11 @@ $ENV{PROVE_TESTS}='t/020*.pl t/010*.pl'
518519
</programlisting>
519520
</para>
520521

522+
<para>
523+
Additionally, the behavior of TAP tests can be controlled by a set of
524+
environment variables, see <xref linkend="regress-tap-vars" />.
525+
</para>
526+
521527
<para>
522528
Some of the TAP tests depend on a set of external commands that would
523529
optionally trigger tests related to them. Each one of those variables

doc/src/sgml/regress.sgml

+27-1
Original file line numberDiff line numberDiff line change
@@ -765,7 +765,9 @@ make check PROVE_TESTS='t/001_test1.pl t/003_test3.pl'
765765

766766
<para>
767767
The TAP tests require the Perl module <literal>IPC::Run</literal>.
768-
This module is available from CPAN or an operating system package.
768+
This module is available from
769+
<ulink url="https://metacpan.org/dist/IPC-Run">CPAN</ulink>
770+
or an operating system package.
769771
They also require <productname>PostgreSQL</productname> to be
770772
configured with the option <option>--enable-tap-tests</option>.
771773
</para>
@@ -789,6 +791,30 @@ make check PROVE_TESTS='t/001_test1.pl t/003_test3.pl'
789791
meaning that <literal>make installcheck</literal> will produce a mix of
790792
results from temporary servers and the already-running test server.
791793
</para>
794+
795+
<sect2 id="regress-tap-vars">
796+
<title>Environment variables</title>
797+
798+
<para>
799+
Data directories are named according to the test filename, and will be
800+
retained if a test fails. If the environment variable
801+
<varname>PG_TEST_NOCLEAN</varname> is set, data directories will be
802+
retained regardless of test status. For example, retaining the data
803+
directory regardless of test results when running the
804+
<application>pg_dump</application> tests:
805+
<programlisting>
806+
PG_TEST_NOCLEAN=1 make -C src/bin/pg_dump check
807+
</programlisting>
808+
</para>
809+
810+
<para>
811+
Many operations in the test suites use a 180-second timeout, which on slow
812+
hosts may lead to load-induced timeouts. Setting the environment variable
813+
<varname>PG_TEST_TIMEOUT_DEFAULT</varname> to a higher number will change
814+
the default to avoid this.
815+
</para>
816+
</sect2>
817+
792818
</sect1>
793819

794820
<sect1 id="regress-coverage">

0 commit comments

Comments
 (0)