pgsql: Revert online data checksum transitions #366
Replies: 16 comments
|
Fujii Masao <masao(dot)fujii(at)gmail(dot)com> via pgsql-hackers · original email On Wed, Sep 16, 2026 at 6:06 PM Daniel Gustafsson
|
|
Daniel Gustafsson <daniel(at)yesql(dot)se> via pgsql-hackers · original email
|
|
Aleksander Alekseev <aleksander(at)tigerdata(dot)com> via pgsql-hackers · original email Hi Daniel,
|
|
Daniel Gustafsson <daniel(at)yesql(dot)se> via pgsql-hackers · original email
|
|
Manuel Reyes Bravo <manuelreyesbravo(at)gmail(dot)com> via pgsql-hackers · original email Daniel Gustafsson <dgustafsson(at)postgresql(dot)org> wrote:
|
|
Daniel Gustafsson <daniel(at)yesql(dot)se> via pgsql-hackers · original email
|
|
Heikki Linnakangas <hlinnaka(at)iki(dot)fi> via pgsql-hackers · original email On 16/09/2026 16:04, Daniel Gustafsson wrote:
|
|
Daniel Gustafsson <daniel(at)yesql(dot)se> via pgsql-hackers · original email
|
|
Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> via pgsql-hackers · original email Daniel Gustafsson <daniel(at)yesql(dot)se> writes:
|
|
Jacob Champion <jacob(dot)champion(at)enterprisedb(dot)com> via pgsql-hackers · original email On Wed, Sep 16, 2026 at 10:14 AM Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
|
|
Bryan Green <dbryan(dot)green(at)gmail(dot)com> via pgsql-hackers · original email If we are pulling in stdbool.h and this is C11...that is undefined behavior
|
|
Bryan Green <dbryan(dot)green(at)gmail(dot)com> via pgsql-hackers · original email This is the goto example:
|
|
Fujii Masao <masao(dot)fujii(at)gmail(dot)com> via pgsql-hackers · original email On Wed, Sep 16, 2026 at 8:08 PM Daniel Gustafsson <daniel(at)yesql(dot)se> wrote:
...
These updates to monitoring.sgml from commit f19c0ec also should be
|
Uh oh!
There was an error while loading. Please reload this page.
pgsql-hackersE1x6lbC-00000000Yw0-3JVv@gemulon.postgresql.orgRevert online data checksum transitions
The feature to enable, or disable, data checksums in an online
cluster saw a number of postcommit fixes during the beta period.
Suspicions were raised about the risk of more issues surfacing
after GA. To avoid shipping code which may have bugs, this
reverts in full, or in part, the following commits:
aaf8b99, cd857de, 5fee7ca, 25b922e, 8fb8ded,
b3a37ff, abac86c, 3a18526, 01805b7, 343d98c,
e469e47, 8d22f52, e5e1f6d, 5ab239c, 0ca1b30,
9a39056, 2018bd6, 1df361e, bf25e55, 381d19d,
b120358, 0700912, d771b0a, f19c0ec, 0907112,
397f0fd, 602f19c, e3a27ca, 4ae3e98, b364828
A few bits remain as they have merit on their own:
pg_control_init. The test case for this fix has been moved to
src/bin/pg_checksums/t/002_actions.pl to survive the revert
which removed the previous location.
informs if the buffer will be zeroed out was kept to aid any
debugging around checksum failures.
to reflect the current state.
references to the off state (0) are replaced with the label
PG_DATA_CHECKSUM_OFF instead.
Discussion: https://postgr.es/m/E15AC050-C4B5-488D-BB2D-3C7AC9F89EA8@yesql.se
Discussion: https://postgr.es/m/anwm6UPxoVS41QA2@bdtpg
Discussion: https://postgr.es/m/CA+Tgmob9NY6m0YNFTQ4nFH2d0iC9SQRruDYxfndGKKzh8OC80w@mail.gmail.com
Discussion: https://postgr.es/m/E07A611B-9CF3-4FDB-8CE8-A221E39040EC%40yesql.se
Branch
REL_19_STABLE
Details
https://git.postgresql.org/pg/commitdiff/c05d5ce12366f1008e95b09a0a9b08a49818b0e1
Modified Files
doc/src/sgml/config.sgml | 5 +-
doc/src/sgml/func/func-admin.sgml | 79 -
doc/src/sgml/func/func-info.sgml | 5 -
doc/src/sgml/glossary.sgml | 20 +-
doc/src/sgml/images/Makefile | 1 -
doc/src/sgml/images/datachecksums.gv | 14 -
doc/src/sgml/images/datachecksums.svg | 81 -
doc/src/sgml/monitoring.sgml | 228 +--
doc/src/sgml/ref/pg_basebackup.sgml | 6 -
doc/src/sgml/ref/pg_checksums.sgml | 12 +-
doc/src/sgml/regress.sgml | 14 -
doc/src/sgml/release-19.sgml | 35 -
doc/src/sgml/wal.sgml | 185 +-
src/backend/access/rmgrdesc/xlogdesc.c | 58 +-
src/backend/access/transam/xlog.c | 552 +-----
src/backend/backup/basebackup.c | 90 +-
src/backend/catalog/system_views.sql | 19 -
src/backend/commands/dbcommands.c | 34 -
src/backend/postmaster/Makefile | 1 -
src/backend/postmaster/auxprocess.c | 28 -
src/backend/postmaster/bgworker.c | 9 -
src/backend/postmaster/datachecksum_state.c | 1979 --------------------
src/backend/postmaster/meson.build | 1 -
src/backend/postmaster/postmaster.c | 5 -
src/backend/replication/logical/decode.c | 16 -
src/backend/storage/ipc/procsignal.c | 8 -
src/backend/storage/page/README | 4 +-
src/backend/storage/page/bufpage.c | 18 +-
src/backend/utils/activity/pgstat_backend.c | 2 -
src/backend/utils/activity/pgstat_io.c | 35 -
src/backend/utils/activity/wait_event_names.txt | 3 -
src/backend/utils/adt/pgstatfuncs.c | 8 +-
src/backend/utils/init/miscinit.c | 3 +-
src/backend/utils/init/postinit.c | 30 +-
src/backend/utils/misc/guc_parameters.dat | 6 +-
src/backend/utils/misc/guc_tables.c | 9 +-
src/backend/utils/misc/pg_controldata.c | 9 +-
src/backend/utils/misc/postgresql.conf.sample | 10 +-
src/bin/pg_checksums/t/002_actions.pl | 5 +
src/bin/pg_controldata/pg_controldata.c | 2 -
src/bin/pg_upgrade/controldata.c | 9 -
src/bin/pg_waldump/t/001_basic.pl | 3 +-
src/include/access/rmgrlist.h | 1 -
src/include/access/xlog.h | 20 +-
src/include/access/xlog_internal.h | 6 -
src/include/catalog/catversion.h | 2 +-
src/include/catalog/pg_control.h | 9 +-
src/include/catalog/pg_proc.dat | 12 -
src/include/commands/progress.h | 16 -
src/include/miscadmin.h | 10 -
src/include/postmaster/datachecksum_state.h | 28 -
src/include/postmaster/proctypelist.h | 2 -
src/include/replication/decode.h | 1 -
src/include/storage/checksum.h | 11 +-
src/include/storage/lwlocklist.h | 1 -
src/include/storage/procsignal.h | 4 -
src/include/storage/subsystemlist.h | 1 -
src/include/utils/backend_progress.h | 1 -
src/test/modules/Makefile | 1 -
src/test/modules/meson.build | 1 -
src/test/modules/test_checksums/.gitignore | 2 -
src/test/modules/test_checksums/Makefile | 36 -
src/test/modules/test_checksums/README | 30 -
src/test/modules/test_checksums/meson.build | 40 -
src/test/modules/test_checksums/t/001_basic.pl | 221 ---
src/test/modules/test_checksums/t/002_restarts.pl | 160 --
.../test_checksums/t/003_standby_restarts.pl | 288 ---
src/test/modules/test_checksums/t/004_offline.pl | 108 --
src/test/modules/test_checksums/t/005_injection.pl | 215 ---
.../modules/test_checksums/t/006_pgbench_single.pl | 285 ---
.../test_checksums/t/007_pgbench_standby.pl | 411 ----
src/test/modules/test_checksums/t/008_pitr.pl | 192 --
src/test/modules/test_checksums/t/009_fpi.pl | 64 -
.../test_checksums/t/010_backup_straddle.pl | 260 ---
.../test_checksums/t/011_standby_straddle.pl | 249 ---
.../test_checksums/t/DataChecksums/Utils.pm | 243 ---
.../modules/test_checksums/test_checksums--1.0.sql | 16 -
src/test/modules/test_checksums/test_checksums.c | 105 --
.../modules/test_checksums/test_checksums.control | 4 -
src/test/regress/expected/rules.out | 38 -
src/test/regress/expected/stats.out | 11 +-
src/tools/pgindent/typedefs.list | 6 -
82 files changed, 79 insertions(+), 6673 deletions(-)
All reactions