postgresql/contrib
Tomas Vondra b779d7d8fd Fix skip-empty-xacts with sequences in test_decoding
Regression tests need to use skip-empty-xacts = false, because there
might be accidental concurrent activity (like autovacuum), particularly
on slow machines. The tests added by 80901b3291 failed to do that in a
couple places, triggering occasional failures on buildfarm.

Fixing the tests however uncovered a bug in the code, because sequence
callbacks did not handle skip-empty-xacts properly. For trasactional
increments we need to check/update the xact_wrote_changes flag, and emit
the BEGIN if it's the first change in the transaction.

Reported-by: Andres Freund
Discussion: https://postgr.es/m/20220212220413.b25amklo7t4xb7ni%40alap3.anarazel.de
2022-02-12 23:50:42 +01:00
..
adminpack Simplify coding around path_contains_parent_reference(). 2022-01-31 13:53:38 -05:00
amcheck Replace Test::More plans with done_testing 2022-02-11 20:54:44 +01:00
auth_delay Update copyright for 2022 2022-01-07 19:04:57 -05:00
auto_explain Replace Test::More plans with done_testing 2022-02-11 20:54:44 +01:00
basic_archive In basic_archive tests, insist on wal_level='replica'. 2022-02-03 16:40:32 -05:00
bloom Replace Test::More plans with done_testing 2022-02-11 20:54:44 +01:00
bool_plperl Fix broken ruleutils support for function TRANSFORM clauses. 2021-01-25 13:03:43 -05:00
btree_gin Fix failure of btree_gin indexscans with "char" type and </<= operators. 2021-08-10 18:10:29 -04:00
btree_gist Fix results of index-only scans on btree_gist char(N) indexes. 2022-01-08 14:54:39 -05:00
citext Enable routine running of citext's UTF8-specific test cases. 2022-01-05 13:30:07 -05:00
cube Add binary I/O capability for cube datatype. 2021-03-06 12:04:05 -05:00
dblink Update copyright for 2022 2022-01-07 19:04:57 -05:00
dict_int Update copyright for 2022 2022-01-07 19:04:57 -05:00
dict_xsyn Update copyright for 2022 2022-01-07 19:04:57 -05:00
earthdistance Make contrib modules' installation scripts more secure. 2020-08-10 10:44:42 -04:00
file_fdw Add HEADER support to COPY text format 2022-01-28 09:44:47 +01:00
fuzzystrmatch Update copyright for 2022 2022-01-07 19:04:57 -05:00
hstore Update copyright for 2022 2022-01-07 19:04:57 -05:00
hstore_plperl Make contrib modules' installation scripts more secure. 2020-08-10 10:44:42 -04:00
hstore_plpython Fix broken ruleutils support for function TRANSFORM clauses. 2021-01-25 13:03:43 -05:00
intagg Make contrib modules' installation scripts more secure. 2020-08-10 10:44:42 -04:00
intarray Update copyright for 2022 2022-01-07 19:04:57 -05:00
isn Update copyright for 2022 2022-01-07 19:04:57 -05:00
jsonb_plperl Expose internal function for converting int64 to numeric 2020-09-09 20:16:28 +02:00
jsonb_plpython Support infinity and -infinity in the numeric data type. 2020-07-22 19:19:44 -04:00
lo Fix bogus CALLED_AS_TRIGGER() defenses. 2020-04-03 11:24:56 -04:00
ltree Clean up more code using "(expr) ? true : false" 2021-10-11 09:36:42 +09:00
ltree_plpython Improve error messages in ltree_in and lquery_in. 2020-03-31 11:14:42 -04:00
oid2name Replace Test::More plans with done_testing 2022-02-11 20:54:44 +01:00
old_snapshot Update copyright for 2022 2022-01-07 19:04:57 -05:00
pageinspect Reduce non-leaf keys overlap in GiST indexes produced by a sorted build 2022-02-07 23:20:42 +03:00
passwordcheck Improve error handling of cryptohash computations 2022-01-11 09:55:16 +09:00
pg_buffercache Remove support for upgrading extensions from "unpackaged" state. 2020-02-19 16:59:14 -05:00
pg_freespacemap Remove support for upgrading extensions from "unpackaged" state. 2020-02-19 16:59:14 -05:00
pg_prewarm Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_stat_statements Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_surgery Remove xloginsert.h from xlog.h 2022-01-30 12:25:24 -03:00
pg_trgm Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_visibility Remove xloginsert.h from xlog.h 2022-01-30 12:25:24 -03:00
pgcrypto pgcrypto: Remove explicit hex encoding/decoding from tests 2021-12-08 06:06:22 +01:00
pgrowlocks pgrowlocks: Fix incorrect format placeholders 2021-12-08 09:32:16 +01:00
pgstattuple Update copyright for 2022 2022-01-07 19:04:57 -05:00
postgres_fdw postgres_fdw: Fix handling of a pending asynchronous request in postgresReScanForeignScan(). 2022-01-27 16:15:00 +09:00
seg Update copyright for 2022 2022-01-07 19:04:57 -05:00
sepgsql Include permissive/enforcing state in sepgsql log messages. 2022-01-12 14:23:13 -05:00
spi Remove support for upgrading extensions from "unpackaged" state. 2020-02-19 16:59:14 -05:00
sslinfo contrib/sslinfo needs a fix too to make hamerkop happy. 2021-11-07 11:33:53 -05:00
start-scripts Remove contrib/start-scripts/osx/. 2017-11-17 12:53:20 -05:00
tablefunc Update copyright for 2022 2022-01-07 19:04:57 -05:00
tcn Update copyright for 2022 2022-01-07 19:04:57 -05:00
test_decoding Fix skip-empty-xacts with sequences in test_decoding 2022-02-12 23:50:42 +01:00
tsm_system_rows Update copyright for 2022 2022-01-07 19:04:57 -05:00
tsm_system_time Update copyright for 2022 2022-01-07 19:04:57 -05:00
unaccent Update copyright for 2022 2022-01-07 19:04:57 -05:00
uuid-ossp Improve error handling of cryptohash computations 2022-01-11 09:55:16 +09:00
vacuumlo Replace Test::More plans with done_testing 2022-02-11 20:54:44 +01:00
xml2 Remove support for upgrading extensions from "unpackaged" state. 2020-02-19 16:59:14 -05:00
Makefile Allow archiving via loadable modules. 2022-02-03 14:05:02 -05:00
README Rename 'gmake' to 'make' in docs and recommended commands 2014-02-12 17:29:19 -05:00
contrib-global.mk Respect TEMP_CONFIG when pg_regress_check and friends are called 2016-02-27 12:28:21 -05:00

README

The PostgreSQL contrib tree
---------------------------

This subtree contains porting tools, analysis utilities, and plug-in
features that are not part of the core PostgreSQL system, mainly
because they address a limited audience or are too experimental to be
part of the main source tree.  This does not preclude their
usefulness.

User documentation for each module appears in the main SGML
documentation.

When building from the source distribution, these modules are not
built automatically, unless you build the "world" target.  You can
also build and install them all by running "make all" and "make
install" in this directory; or to build and install just one selected
module, do the same in that module's subdirectory.

Some directories supply new user-defined functions, operators, or
types.  To make use of one of these modules, after you have installed
the code you need to register the new SQL objects in the database
system by executing a CREATE EXTENSION command.  In a fresh database,
you can simply do

    CREATE EXTENSION module_name;

See the PostgreSQL documentation for more information about this
procedure.