postgresql/src/backend
Magnus Hagander 1fde38beaa Allow on-line enabling and disabling of data checksums
This makes it possible to turn checksums on in a live cluster, without
the previous need for dump/reload or logical replication (and to turn it
off).

Enabling checkusm starts a background process in the form of a
launcher/worker combination that goes through the entire database and
recalculates checksums on each and every page. Only when all pages have
been checksummed are they fully enabled in the cluster. Any failure of
the process will revert to checksums off and the process has to be
started.

This adds a new WAL record that indicates the state of checksums, so
the process works across replicated clusters.

Authors: Magnus Hagander and Daniel Gustafsson
Review: Tomas Vondra, Michael Banck, Heikki Linnakangas, Andrey Borodin
2018-04-05 22:04:48 +02:00
..
access Allow on-line enabling and disabling of data checksums 2018-04-05 22:04:48 +02:00
bootstrap Allow background workers to bypass datallowconn 2018-04-05 19:02:45 +02:00
catalog Allow on-line enabling and disabling of data checksums 2018-04-05 22:04:48 +02:00
commands MERGE post-commit review 2018-04-05 09:54:07 +01:00
executor MERGE minor errata 2018-04-05 13:19:13 +01:00
foreign Remove bogus "extern" annotations on function definitions. 2018-02-19 12:07:44 -05:00
jit Fix a boatload of typos in C comments. 2018-04-01 15:01:28 -04:00
lib Fix non-portable use of round(). 2018-03-31 20:26:47 -07:00
libpq Make be-secure-common.c more consistent for future SSL implementations 2018-04-02 11:37:40 -04:00
main Update copyright for 2018 2018-01-02 23:30:12 -05:00
nodes WITH support in MERGE 2018-04-03 12:13:59 +01:00
optimizer MERGE post-commit review 2018-04-05 09:54:07 +01:00
parser Allow cpluspluscheck to pass by renaming variable 2018-04-05 20:06:02 +01:00
po Translation updates 2017-08-07 13:55:34 -04:00
port Support huge pages on Windows 2018-01-21 15:40:46 +01:00
postmaster Allow on-line enabling and disabling of data checksums 2018-04-05 22:04:48 +02:00
regex Update copyright for 2018 2018-01-02 23:30:12 -05:00
replication Allow on-line enabling and disabling of data checksums 2018-04-05 22:04:48 +02:00
rewrite MERGE SQL Command following SQL:2016 2018-04-03 09:28:16 +01:00
snowball Avoid unnecessary use of pg_strcasecmp for already-downcased identifiers. 2018-01-26 18:25:14 -05:00
statistics Fast ALTER TABLE ADD COLUMN with a non-NULL default 2018-03-28 10:43:52 +10:30
storage Allow on-line enabling and disabling of data checksums 2018-04-05 22:04:48 +02:00
tcop Allow background workers to bypass datallowconn 2018-04-05 19:02:45 +02:00
tsearch Add websearch_to_tsquery 2018-04-05 19:55:11 +03:00
utils Allow on-line enabling and disabling of data checksums 2018-04-05 22:04:48 +02:00
.gitignore Add .gitignore entries for AIX-specific intermediate build artifacts. 2015-07-08 20:44:22 -04:00
common.mk Remove PARTIAL_LINKING build mode. 2018-03-30 17:33:04 -07:00
Makefile Install errcodes.txt for use by extensions. 2018-04-05 04:05:40 +01:00
nls.mk Translation updates 2017-05-15 12:19:54 -04:00