postgresql/src/test
Tom Lane 3af87736bf Fix another cause of "wrong varnullingrels" planner failures.
I removed the delay_upper_joins mechanism in commit b448f1c8d,
reasoning that it was only needed when we have a single-table
(SELECT ... WHERE) as the immediate RHS child of a left join,
and we could get rid of that by hoisting the WHERE condition into
the parent join's quals.  However that new code missed a case:
we could have "foo LEFT JOIN ((SELECT ... WHERE) LEFT JOIN bar)",
and if the two left joins can be commuted then we now have the
problematic query shape.  We can fix this too easily enough,
by allowing the syntactically-lower left join to pass through
its parent qual location pointer recursively.  That lets
prepjointree.c discard the SELECT by temporarily hoisting the
WHERE condition into the ancestor join's qual.

Per bug #17978 from Zuming Jiang.

Discussion: https://postgr.es/m/17978-12f3d93a55297266@postgresql.org
2023-06-20 11:09:56 -04:00
..
authentication Refactor routine to find single log content pattern in TAP tests 2023-06-09 11:56:27 +09:00
examples Update copyright for 2023 2023-01-02 15:00:37 -05:00
icu CREATE DATABASE: make LOCALE apply to all collation providers. 2023-06-16 10:27:32 -07:00
isolation Fix misbehavior of EvalPlanQual checks with multiple result relations. 2023-05-19 14:26:40 -04:00
kerberos Spell the values of libpq's gssdelegation parameter as "0" and "1". 2023-05-22 11:50:27 -04:00
ldap Pre-beta mechanical code beautification. 2023-05-19 17:24:48 -04:00
locale Update copyright for 2023 2023-01-02 15:00:37 -05:00
mb Fix MB regression tests for WAL-logging of hash indexes. 2017-03-15 07:25:36 -04:00
modules test_extensions: make meson.build consistent with Makefile. 2023-06-19 18:30:51 -07:00
perl Refactor routine to find single log content pattern in TAP tests 2023-06-09 11:56:27 +09:00
recovery Enable archiving in recovery TAP test 009_twophase.pl 2023-06-20 10:25:27 +09:00
regress Fix another cause of "wrong varnullingrels" planner failures. 2023-06-20 11:09:56 -04:00
ssl Add newline at end of file 2023-05-23 15:18:06 +02:00
subscription Pre-beta2 mechanical code beautification. 2023-06-20 09:50:43 -04:00
Makefile Refactor PG_TEST_EXTRA logic in autoconf build 2022-09-20 11:24:16 -07:00
README Remove the option to build thread_test.c outside configure. 2020-10-21 12:08:48 -04:00
meson.build Update copyright for 2023 2023-01-02 15:00:37 -05:00

README

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