From d3d11a61172d6689ffaab7f2c7ed30b7cb66d237 Mon Sep 17 00:00:00 2001 From: Manu Date: Thu, 17 Sep 2026 10:24:01 -0300 Subject: [PATCH] Remove remaining leftovers of the online checksums revert Commit c05d5ce1236 removed the code that set and read the data_checksum_version member of xl_checkpoint_redo, but not the member itself, so every XLOG_CHECKPOINT_REDO record still carried four bytes that are never assigned. Remove it; the record data is back to the four bytes it had before f19c0eccae9. Also restore the descriptions of checksum_failures and checksum_last_failure, which are NULL again when data checksums are disabled, and remove the checksum_enable_offline() and checksum_disable_offline() test helpers, which have no callers left. Reported-by: Fujii Masao --- doc/src/sgml/monitoring.sgml | 15 ++++------ src/include/access/xlog_internal.h | 1 - src/test/perl/PostgreSQL/Test/Cluster.pm | 36 ------------------------ 3 files changed, 5 insertions(+), 47 deletions(-) diff --git a/doc/src/sgml/monitoring.sgml b/doc/src/sgml/monitoring.sgml index 86982079362..fe31b7b62ec 100644 --- a/doc/src/sgml/monitoring.sgml +++ b/doc/src/sgml/monitoring.sgml @@ -3902,14 +3902,9 @@ description | Waiting for a newly initialized WAL file to reach durable storage Number of data page checksum failures detected in this - database (or on a shared object). Detected failures are not reset if - the setting changes. Clusters - which are initialized without data checksums will show this as - 0. In PostgreSQL version - 18 and earlier, this was set to NULL for clusters - with data checksums disabled. - - + database (or on a shared object), or NULL if data checksums are + disabled. + @@ -3918,8 +3913,8 @@ description | Waiting for a newly initialized WAL file to reach durable storage Time at which the last data page checksum failure was detected in - this database (or on a shared object). Last failure is reported - regardless of the setting. + this database (or on a shared object), or NULL if data checksums are + disabled. diff --git a/src/include/access/xlog_internal.h b/src/include/access/xlog_internal.h index 6639dc19e32..7503c49f203 100644 --- a/src/include/access/xlog_internal.h +++ b/src/include/access/xlog_internal.h @@ -308,7 +308,6 @@ typedef struct xl_end_of_recovery typedef struct xl_checkpoint_redo { int wal_level; - uint32 data_checksum_version; } xl_checkpoint_redo; /* diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm index 366519e22b5..da8d5516b53 100644 --- a/src/test/perl/PostgreSQL/Test/Cluster.pm +++ b/src/test/perl/PostgreSQL/Test/Cluster.pm @@ -3992,42 +3992,6 @@ sub advance_wal } } -=item $node->checksum_enable_offline() - -Enable data page checksums in an offline cluster with B. The -caller is responsible for ensuring that the cluster is in the right state for -this operation. - -=cut - -sub checksum_enable_offline -{ - my ($self) = @_; - - print "# Enabling checksums in \"$self->data_dir\"\n"; - PostgreSQL::Test::Utils::system_or_bail('pg_checksums', '-D', - $self->data_dir, '-e'); - return; -} - -=item $node->checksum_disable_offline() - -Disable data page checksums in an offline cluster with B. The -caller is responsible for ensuring that the cluster is in the right state for -this operation. - -=cut - -sub checksum_disable_offline -{ - my ($self) = @_; - - print "# Disabling checksums in \"$self->data_dir\"\n"; - PostgreSQL::Test::Utils::system_or_bail('pg_checksums', '-D', - $self->data_dir, '-d'); - return; -} - =pod =back -- 2.55.0