postgresql/contrib
Alexander Korotkov ae1f9b0a9b Fix amcheck for page checks concurrent to replay of btree page deletion
amcheck expects at least hikey to always exist on leaf page even if it is
deleted page.  But replica reinitializes page during replay of page deletion,
causing deleted page to have no items.  Thus, replay of page deletion can
cause an error in concurrent amcheck run.

This commit relaxes amcheck expectation making it tolerate deleted page with
no items.

Reported-by: Konstantin Knizhnik
Discussion: https://postgr.es/m/CAPpHfdt_OTyQpXaPJcWzV2N-LNeNJseNB-K_A66qG%3DL518VTFw%40mail.gmail.com
Author: Alexander Korotkov
Reviewed-by: Peter Geoghegan
Backpatch-through: 11
2020-05-14 12:46:08 +03:00
..
adminpack Add missing errcode() in a few ereport calls. 2020-03-18 09:33:01 +05:30
amcheck Fix amcheck for page checks concurrent to replay of btree page deletion 2020-05-14 12:46:08 +03:00
auth_delay
auto_explain Fix contrib/auto_explain to not cause problems in parallel workers. 2019-06-03 18:06:04 -04:00
bloom Fix failure with lock mode used for custom relation options 2019-09-25 10:08:26 +09:00
btree_gin
btree_gist Get rid of trailing semicolons in C macro definitions. 2020-05-01 17:28:00 -04:00
citext Fix typos in various places 2019-06-03 13:44:03 +09:00
cube Initial pgindent run for v12. 2019-05-22 12:55:34 -04:00
dblink Phase 2 pgindent run for v12. 2019-05-22 13:04:48 -04:00
dict_int Ensure maxlen is at leat 1 in dict_int 2019-12-03 18:40:48 +01:00
dict_xsyn
earthdistance
file_fdw Phase 2 pgindent run for v12. 2019-05-22 13:04:48 -04:00
fuzzystrmatch
hstore
hstore_plperl Clean up PL/Perl's handling of the _() macro. 2019-06-02 12:23:39 -04:00
hstore_plpython
intagg
intarray Fix intarray's GiST opclasses to not fail for empty arrays with <@. 2019-08-06 18:04:51 -04:00
isn
jsonb_plperl Fix handling of "undef" in contrib/jsonb_plperl. 2019-08-04 14:05:35 -04:00
jsonb_plpython In jsonb_plpython.c, suppress warning message from gcc 10. 2020-01-30 18:26:13 -05:00
lo Fix bogus CALLED_AS_TRIGGER() defenses. 2020-04-03 11:24:56 -04:00
ltree Back-patch addition of stack overflow and interrupt checks for lquery. 2020-03-31 11:37:44 -04:00
ltree_plpython
oid2name
pageinspect Paper over bt_metap() oldest_xact bug in backbranches. 2020-03-11 14:15:02 -07:00
passwordcheck Fix handling of previous password hooks in passwordcheck 2019-08-01 09:37:48 +09:00
pg_buffercache
pg_freespacemap
pg_prewarm Fix more typos and inconsistencies in the tree 2019-06-17 16:13:16 +09:00
pg_standby
pg_stat_statements Replace an occurrence of slave with standby 2019-06-19 14:38:23 +02:00
pg_trgm Get rid of trailing semicolons in C macro definitions. 2020-05-01 17:28:00 -04:00
pg_visibility Revert "Skip WAL for new relfilenodes, under wal_level=minimal." 2020-03-22 09:24:13 -07:00
pgcrypto Get rid of trailing semicolons in C macro definitions. 2020-05-01 17:28:00 -04:00
pgrowlocks Avoid holding a directory FD open across assorted SRF calls. 2020-03-16 21:05:53 -04:00
pgstattuple Phase 2 pgindent run for v12. 2019-05-22 13:04:48 -04:00
postgres_fdw In postgres_fdw, don't try to ship MULTIEXPR updates to remote server. 2020-01-26 14:31:08 -05:00
seg
sepgsql Fix cache reference leak in contrib/sepgsql. 2020-04-16 14:45:54 -04:00
spi Fix more strcmp() calls using boolean-like comparisons for result checks 2019-04-12 10:16:49 +09:00
sslinfo
start-scripts
tablefunc Disallow null category in crosstab_hash 2019-12-23 13:33:34 -05:00
tcn
test_decoding Propagate ALTER TABLE ... SET STORAGE to indexes 2020-05-08 09:18:15 +02:00
tsm_system_rows Phase 2 pgindent run for v12. 2019-05-22 13:04:48 -04:00
tsm_system_time Phase 2 pgindent run for v12. 2019-05-22 13:04:48 -04:00
unaccent
uuid-ossp
vacuumlo Fix copy-pasto in freeing memory on error in vacuumlo. 2019-06-07 12:42:27 +03:00
xml2 Phase 2 pgindent run for v12. 2019-05-22 13:04:48 -04:00
contrib-global.mk
Makefile
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.