postgresql/src/test
Thomas Munro d4e71df6d7 Add io_direct setting (developer-only).
Provide a way to ask the kernel to use O_DIRECT (or local equivalent)
where available for data and WAL files, to avoid or minimize kernel
caching.  This hurts performance currently and is not intended for end
users yet.  Later proposed work would introduce our own I/O clustering,
read-ahead, etc to replace the facilities the kernel disables with this
option.

The only user-visible change, if the developer-only GUC is not used, is
that this commit also removes the obscure logic that would activate
O_DIRECT for the WAL when wal_sync_method=open_[data]sync and
wal_level=minimal (which also requires max_wal_senders=0).  Those are
non-default and unlikely settings, and this behavior wasn't (correctly)
documented.  The same effect can be achieved with io_direct=wal.

Author: Thomas Munro <thomas.munro@gmail.com>
Author: Andres Freund <andres@anarazel.de>
Author: Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>
Reviewed-by: Justin Pryzby <pryzby@telsasoft.com>
Reviewed-by: Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>
Discussion: https://postgr.es/m/CA%2BhUKGK1X532hYqJ_MzFWt0n1zt8trz980D79WbjwnT-yYLZpg%40mail.gmail.com
2023-04-08 16:35:07 +12:00
..
authentication Test SCRAM iteration changes with psql \password 2023-04-07 22:14:23 +02:00
examples Update copyright for 2023 2023-01-02 15:00:37 -05:00
icu initdb: derive encoding from locale for ICU; similar to libc. 2023-03-10 10:51:24 -08:00
isolation Fix concurrent update issues with MERGE. 2023-03-13 10:22:22 +00:00
kerberos Add support for Kerberos credential delegation 2023-04-07 21:58:04 -04:00
ldap tests: Prevent syslog activity by slapd, take 2 2023-03-16 23:07:29 -07:00
locale Update copyright for 2023 2023-01-02 15:00:37 -05:00
mb
modules Add io_direct setting (developer-only). 2023-04-08 16:35:07 +12:00
perl Add support for Kerberos credential delegation 2023-04-07 21:58:04 -04:00
recovery Refactor background psql TAP functions 2023-04-07 22:14:20 +02:00
regress Add support for Kerberos credential delegation 2023-04-07 21:58:04 -04:00
ssl Allow to use system CA pool for certificate verification 2023-04-05 23:22:17 +02:00
subscription Refactor background psql TAP functions 2023-04-07 22:14:20 +02:00
Makefile Refactor PG_TEST_EXTRA logic in autoconf build 2022-09-20 11:24:16 -07:00
meson.build Update copyright for 2023 2023-01-02 15:00:37 -05:00
README Remove the option to build thread_test.c outside configure. 2020-10-21 12:08:48 -04:00

PostgreSQL tests
================

This directory contains a variety of test infrastructure as well as some of the
tests in PostgreSQL. Not all tests are here -- in particular, there are more in
individual contrib/ modules and in src/bin.

Not all these tests get run by "make check". Check src/test/Makefile to see
which tests get run automatically.

authentication/
  Tests for authentication (but see also below)

examples/
  Demonstration programs for libpq that double as regression tests via
  "make check"

isolation/
  Tests for concurrent behavior at the SQL level

kerberos/
  Tests for Kerberos/GSSAPI authentication and encryption

ldap/
  Tests for LDAP-based authentication

locale/
  Sanity checks for locale data, encodings, etc

mb/
  Tests for multibyte encoding (UTF-8) support

modules/
  Extensions used only or mainly for test purposes, generally not suitable
  for installing in production databases

perl/
  Infrastructure for Perl-based TAP tests

recovery/
  Test suite for recovery and replication

regress/
  PostgreSQL's main regression test suite, pg_regress

ssl/
  Tests to exercise and verify SSL certificate handling

subscription/
  Tests for logical replication