pg_checksums: Use new routine to retrieve data of PG_VERSION
authorMichael Paquier <michael@paquier.xyz>
Mon, 20 Oct 2025 00:35:22 +0000 (09:35 +0900)
committerMichael Paquier <michael@paquier.xyz>
Mon, 20 Oct 2025 00:35:22 +0000 (09:35 +0900)
commita7c30422004ae757909ed831fd8eea453022f969
tree83b70b39d275146251f5a3d201de2bdac439184b
parent92cf557ffae436235cfa3bbba1265b5807a68ef2
pg_checksums: Use new routine to retrieve data of PG_VERSION

Previously, attempting to use pg_checksums on a cluster with a control
file whose version does not match with what thetool is able to support
would lead to the following error:
pg_checksums: error: pg_control CRC value is incorrect

This is confusing, because it would look like the control file is
corrupted.  However, the contents of the control file are correct,
pg_checksums not being able to understand how the past control file is
shaped.

This commit adds a check based on PG_VERSION, using the facility added
by cd0be131ba6f, using the same error message as some of the other
frontend tools.  A note is added in the documentation about the major
version requirement.

Author: Michael Banck <mbanck@gmx.net>
Discussion: https://postgr.es/m/68f1ff21.170a0220.2c9b5f.4df5@mx.google.com
doc/src/sgml/ref/pg_checksums.sgml
src/bin/pg_checksums/pg_checksums.c