postgresql/src/test/modules
Michael Paquier 344487e2db Tweak behavior of pg_dump --extension with configuration tables
6568cef, that introduced the option, had an inconsistent behavior when
it comes to configuration tables set up by pg_extension_config_dump, as
the data of all configuration tables would included in a dump even for
extensions not listed by a set of --extension switches.

The contents dumped changed depending on the schema where an extension
was installed when an extension was not listed.  For example, an
extension installed under the public schema would have its configuration
data not dumped even when not listed with --extension, which was
inconsistent with the case of an extension installed on a non-public
schema, where the configuration would be dumped.

Per discussion with Noah, we have settled down to the simple rule of
dumping configuration data of an extension if it is listed in
--extension (default is unchanged and backward-compatible, to dump
everything on sight if there are no extensions directly listed).  This
avoids some weird cases where the dumps depended on a --schema for one.

More tests are added to cover the gap, where we cross-check more
behaviors depending on --schema when an extension is not listed.

Reported-by: Noah Misch
Reviewed-by: Noah Misch
Discussion: https://postgr.es/m/20210404220802.GA728316@rfd.leadboat.com
2021-04-15 10:03:46 +09:00
..
brin Add a couple of missed .gitignore entries. 2020-12-18 16:24:49 -05:00
commit_ts Fix timestamp range handling in regression tests of modules/commit_ts/ 2020-07-13 10:54:26 +09:00
delay_execution ALTER TABLE ... DETACH PARTITION ... CONCURRENTLY 2021-03-25 18:00:28 -03:00
dummy_index_am Pass down "logically unchanged index" hint. 2021-01-13 08:11:00 -08:00
dummy_seclabel Update copyright for 2021 2021-01-02 13:06:25 -05:00
libpq_pipeline Suppress length of Notice/Error msgs in PQtrace regress mode 2021-04-09 17:13:18 -04:00
plsample Update copyright for 2021 2021-01-02 13:06:25 -05:00
snapshot_too_old Add a couple of missed .gitignore entries. 2020-12-18 16:24:49 -05:00
spgist_name_ops Support INCLUDE'd columns in SP-GiST. 2021-04-05 18:41:21 -04:00
ssl_passphrase_callback Introduce --with-ssl={openssl} as a configure option 2021-02-01 19:19:44 +09:00
test_bloomfilter Update copyright for 2021 2021-01-02 13:06:25 -05:00
test_ddl_deparse Update copyright for 2021 2021-01-02 13:06:25 -05:00
test_extensions Fix use-after-free bug with event triggers in an extension script 2020-09-15 21:03:14 -03:00
test_ginpostinglist Update copyright for 2021 2021-01-02 13:06:25 -05:00
test_integerset Update copyright for 2021 2021-01-02 13:06:25 -05:00
test_misc Message fixes and style improvements 2020-09-14 06:42:30 +02:00
test_parser Update copyright for 2021 2021-01-02 13:06:25 -05:00
test_pg_dump Tweak behavior of pg_dump --extension with configuration tables 2021-04-15 10:03:46 +09:00
test_predtest Update copyright for 2021 2021-01-02 13:06:25 -05:00
test_rbtree Update copyright for 2021 2021-01-02 13:06:25 -05:00
test_regex Fix semantics of regular expression back-references. 2021-03-02 11:34:53 -05:00
test_rls_hooks Update copyright for 2021 2021-01-02 13:06:25 -05:00
test_shm_mq Update copyright for 2021 2021-01-02 13:06:25 -05:00
unsafe_tests Add primary keys and unique constraints to system catalogs 2021-01-30 19:44:29 +01:00
worker_spi Update copyright for 2021 2021-01-02 13:06:25 -05:00
Makefile Fix confusion in SP-GiST between attribute type and leaf storage type. 2021-04-04 14:28:57 -04:00
README Add an enforcement mechanism for global object names in regression tests. 2019-06-29 11:34:00 -04:00

README

Test extensions and libraries
=============================

src/test/modules contains PostgreSQL extensions that are primarily or entirely
intended for testing PostgreSQL and/or to serve as example code. The extensions
here aren't intended to be installed in a production server and aren't suitable
for "real work".

Furthermore, while you can do "make install" and "make installcheck" in
this directory or its children, it is NOT ADVISABLE to do so with a server
containing valuable data.  Some of these tests may have undesirable
side-effects on roles or other global objects within the tested server.
"make installcheck-world" at the top level does not recurse into this
directory.

Most extensions have their own pg_regress tests or isolationtester specs. Some
are also used by tests elsewhere in the tree.

If you're adding new hooks or other functionality exposed as C-level API this
is where to add the tests for it.