postgresql/src/test/modules
Tom Lane 72a5b1fc88 Add @extschema:name@ and no_relocate options to extensions.
@extschema:name@ extends the existing @extschema@ feature so that
we can also insert the schema name of some required extension,
thus making cross-extension references robust even if they are in
different schemas.

However, this has the same hazard as @extschema@: if the schema
name is embedded literally in an installed object, rather than being
looked up once during extension script execution, then it's no longer
safe to relocate the other extension to another schema.  To deal with
that without restricting things unnecessarily, add a "no_relocate"
option to extension control files.  This allows an extension to
specify that it cannot handle relocation of some of its required
extensions, even if in themselves those extensions are relocatable.
We detect "no_relocate" requests of dependent extensions during
ALTER EXTENSION SET SCHEMA.

Regina Obe, reviewed by Sandro Santilli and myself

Discussion: https://postgr.es/m/003001d8f4ae$402282c0$c0678840$@pcorp.us
2023-03-20 18:37:11 -04:00
..
brin Add wait_for_replay_catchup wrapper to Cluster.pm 2023-02-13 11:52:19 +01:00
commit_ts Update copyright for 2023 2023-01-02 15:00:37 -05:00
delay_execution meson: Prevent installation of test files during main install 2023-03-03 07:45:52 +01:00
dummy_index_am Ignore BRIN indexes when checking for HOT updates 2023-03-20 11:02:42 +01:00
dummy_seclabel Improve several permission-related error messages. 2023-03-17 10:33:09 +01:00
ldap_password_func Add .gitignore to ldap_password_func 2023-03-16 09:36:01 +09:00
libpq_pipeline Avoid criticizable perl code 2023-03-09 12:02:18 +01:00
plsample meson: Prevent installation of test files during main install 2023-03-03 07:45:52 +01:00
snapshot_too_old Update copyright for 2023 2023-01-02 15:00:37 -05:00
spgist_name_ops meson: Prevent installation of test files during main install 2023-03-03 07:45:52 +01:00
ssl_passphrase_callback meson: Prevent installation of test files during main install 2023-03-03 07:45:52 +01:00
test_bloomfilter meson: Prevent installation of test files during main install 2023-03-03 07:45:52 +01:00
test_copy_callbacks meson: Prevent installation of test files during main install 2023-03-03 07:45:52 +01:00
test_custom_rmgrs meson: Prevent installation of test files during main install 2023-03-03 07:45:52 +01:00
test_ddl_deparse meson: Prevent installation of test files during main install 2023-03-03 07:45:52 +01:00
test_extensions Add @extschema:name@ and no_relocate options to extensions. 2023-03-20 18:37:11 -04:00
test_ginpostinglist meson: Prevent installation of test files during main install 2023-03-03 07:45:52 +01:00
test_integerset meson: Prevent installation of test files during main install 2023-03-03 07:45:52 +01:00
test_lfind meson: Prevent installation of test files during main install 2023-03-03 07:45:52 +01:00
test_misc Fix outdated references to guc.c 2023-03-02 13:49:39 +01:00
test_oat_hooks meson: Prevent installation of test files during main install 2023-03-03 07:45:52 +01:00
test_parser meson: Prevent installation of test files during main install 2023-03-03 07:45:52 +01:00
test_pg_db_role_setting meson: Prevent installation of test files during main install 2023-03-03 07:45:52 +01:00
test_pg_dump meson: Prevent installation of test files during main install 2023-03-03 07:45:52 +01:00
test_predtest meson: Prevent installation of test files during main install 2023-03-03 07:45:52 +01:00
test_rbtree meson: Prevent installation of test files during main install 2023-03-03 07:45:52 +01:00
test_regex meson: Prevent installation of test files during main install 2023-03-03 07:45:52 +01:00
test_rls_hooks meson: Prevent installation of test files during main install 2023-03-03 07:45:52 +01:00
test_shm_mq meson: Prevent installation of test files during main install 2023-03-03 07:45:52 +01:00
test_slru meson: Prevent installation of test files during main install 2023-03-03 07:45:52 +01:00
unsafe_tests Improve several permission-related error messages. 2023-03-17 10:33:09 +01:00
worker_spi meson: Prevent installation of test files during main install 2023-03-03 07:45:52 +01:00
Makefile Add a hook for modifying the ldapbind password 2023-03-15 16:37:28 -04:00
meson.build Add a hook for modifying the ldapbind password 2023-03-15 16:37:28 -04:00
README Add an enforcement mechanism for global object names in regression tests. 2019-06-29 11:34:00 -04:00

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.