postgresql/contrib
Tom Lane e9d9ba2a4d Avoid some other O(N^2) hazards in list manipulation.
In the same spirit as 6301c3ada, fix some more places where we were
using list_delete_first() in a loop and thereby risking O(N^2)
behavior.  It's not clear that the lists manipulated in these spots
can get long enough to be really problematic ... but it's not clear
that they can't, either, and the fixes are simple enough.

As before, back-patch to v13.

Discussion: https://postgr.es/m/CD2F0E7F-9822-45EC-A411-AE56F14DEA9F@amazon.com
2021-11-01 16:24:39 -04:00
..
adminpack Rename Default Roles to Predefined Roles 2021-04-01 15:32:06 -04:00
amcheck Improve contrib/amcheck's tests for CREATE INDEX CONCURRENTLY. 2021-10-28 11:45:14 -04:00
auth_delay Update copyright for 2021 2021-01-02 13:06:25 -05:00
auto_explain Move Perl test modules to a better namespace 2021-10-24 10:28:19 -04:00
bloom Move Perl test modules to a better namespace 2021-10-24 10:28:19 -04: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 Improve performance of float overflow checks in btree_gist 2021-08-19 10:42:44 +09:00
citext Make contrib modules' installation scripts more secure. 2020-08-10 10:44:42 -04:00
cube Add binary I/O capability for cube datatype. 2021-03-06 12:04:05 -05:00
dblink Improve HINT message that FDW reports when there are no valid options. 2021-10-27 00:46:52 +09:00
dict_int Update copyright for 2021 2021-01-02 13:06:25 -05:00
dict_xsyn Update copyright for 2021 2021-01-02 13:06:25 -05:00
earthdistance Make contrib modules' installation scripts more secure. 2020-08-10 10:44:42 -04:00
file_fdw Rename Default Roles to Predefined Roles 2021-04-01 15:32:06 -04:00
fuzzystrmatch Update copyright for 2021 2021-01-02 13:06:25 -05:00
hstore Remove deprecated containment operators for contrib types. 2021-03-05 10:45:41 -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 Clean up some code using "(expr) ? true : false" 2021-09-08 09:44:04 +09:00
isn Update copyright for 2021 2021-01-02 13:06:25 -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 Move Perl test modules to a better namespace 2021-10-24 10:28:19 -04:00
old_snapshot Initial pgindent and pgperltidy run for v14. 2021-05-12 13:14:10 -04:00
pageinspect pageinspect: Make page deletion elog less chatty. 2021-09-17 14:19:51 -07:00
passwordcheck Update copyright for 2021 2021-01-02 13:06:25 -05: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 Replace RelationOpenSmgr() with RelationGetSmgr(). 2021-07-12 17:01:36 -04:00
pg_stat_statements Don't try to read a multi-GB pg_stat_statements file in one call. 2021-10-31 19:13:48 -04:00
pg_surgery Improve error messages about mismatching relkind 2021-07-08 09:44:51 +02:00
pg_trgm Avoid some other O(N^2) hazards in list manipulation. 2021-11-01 16:24:39 -04:00
pg_visibility Replace RelationOpenSmgr() with RelationGetSmgr(). 2021-07-12 17:01:36 -04:00
pgcrypto Add alternative output for OpenSSL 3 without legacy loaded 2021-08-10 15:08:46 +02:00
pgrowlocks Rename Default Roles to Predefined Roles 2021-04-01 15:32:06 -04:00
pgstattuple Improve error messages about mismatching relkind 2021-07-08 09:44:51 +02:00
postgres_fdw Improve HINT message that FDW reports when there are no valid options. 2021-10-27 00:46:52 +09:00
seg Stabilize contrib/seg regression test. 2021-06-07 14:52:42 -04:00
sepgsql Clean up some code using "(expr) ? true : false" 2021-09-08 09:44:04 +09:00
spi Remove support for upgrading extensions from "unpackaged" state. 2020-02-19 16:59:14 -05:00
sslinfo Use be_tls_* API for SSL information in sslinfo 2020-11-03 09:47:36 +01:00
start-scripts Remove contrib/start-scripts/osx/. 2017-11-17 12:53:20 -05:00
tablefunc Fix typos and grammar in code comments 2021-09-27 14:21:28 +09:00
tcn Update copyright for 2021 2021-01-02 13:06:25 -05:00
test_decoding Move Perl test modules to a better namespace 2021-10-24 10:28:19 -04:00
tsm_system_rows Update copyright for 2021 2021-01-02 13:06:25 -05:00
tsm_system_time Update copyright for 2021 2021-01-02 13:06:25 -05:00
unaccent Update Unicode data to CLDR 39 2021-04-08 08:28:03 +02:00
uuid-ossp uuid-ossp: Remove obsolete build connection with pgcrypto 2021-10-30 12:53:02 +02:00
vacuumlo Move Perl test modules to a better namespace 2021-10-24 10:28:19 -04:00
xml2 Remove support for upgrading extensions from "unpackaged" state. 2020-02-19 16:59:14 -05:00
Makefile Introduce --with-ssl={openssl} as a configure option 2021-02-01 19:19:44 +09: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.