postgresql/src/test
David Rowley 1050048a31 Flush Memoize cache when non-key parameters change
It's possible that a subplan below a Memoize node contains a parameter
from above the Memoize node.  If this parameter changes then cache entries
may become out-dated due to the new parameter value.

Previously Memoize was mistakenly not aware of this.  We fix this here by
flushing the cache whenever a parameter that's not part of the cache
key changes.

Bug: #17213
Reported by: Elvis Pranskevichus
Author: David Rowley
Discussion: https://postgr.es/m/17213-988ed34b225a2862@postgresql.org
Backpatch-through: 14, where Memoize was added
2021-11-24 14:56:18 +13:00
..
authentication Doc: improve README files associated with TAP tests. 2021-10-31 18:12:44 -04:00
examples
isolation Rename debug_invalidate_system_caches_always to debug_discard_caches. 2021-07-13 15:01:01 -04:00
kerberos Doc: improve README files associated with TAP tests. 2021-10-31 18:12:44 -04:00
ldap Doc: improve README files associated with TAP tests. 2021-10-31 18:12:44 -04:00
locale Remove extraneous newlines added by perl copyright patch 2021-05-07 11:37:37 -04:00
mb
modules Move Perl test modules to a better namespace 2021-10-24 10:28:19 -04:00
perl Doc: update some things relevant to minimum Test::More version. 2021-11-21 11:49:16 -05:00
recovery Fix instability in 026_overwrite_contrecord.pl test. 2021-11-09 18:40:19 -05:00
regress Flush Memoize cache when non-key parameters change 2021-11-24 14:56:18 +13:00
ssl Doc: improve README files associated with TAP tests. 2021-10-31 18:12:44 -04:00
subscription Invalidate relcache when changing REPLICA IDENTITY index. 2021-11-16 08:10:13 +05:30
Makefile Revert per-index collation version tracking feature. 2021-05-07 21:10:11 +12: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