Fix version number calculation for data folder flush in pg_combinebackup
authorMichael Paquier <[email protected]>
Mon, 13 Oct 2025 23:30:54 +0000 (08:30 +0900)
committerMichael Paquier <[email protected]>
Mon, 13 Oct 2025 23:30:54 +0000 (08:30 +0900)
commit1c05fe11abb6a1588b158e3f39b668053e24cdae
tree133144c4e2e131cdc39a40b645f7eadb57feb4c3
parentadd323da40a6bf9e01cdda510e32ea924c89cd1a
Fix version number calculation for data folder flush in pg_combinebackup

The version number calculated by read_pg_version_file() is multiplied
once by 10000, to be able to do comparisons based on PG_VERSION_NUM or
equivalents with a minor version included.  However, the version number
given sync_pgdata() was multiplied by 10000 a second time, leading to an
overestimated number.

This issue was harmless (still incorrect) as pg_combinebackup does not
support versions of Postgres older than v10, and sync_pgdata() only
includes a version check due to the rename of pg_xlog/ to pg_wal/.  This
folder rename happened in the development cycle of v10.  This would
become a problem if in the future  sync_pgdata() is changed to have more
version-specific checks.

Oversight in dc212340058b, so backpatch down to v17.

Reviewed-by: Chao Li <[email protected]>
Discussion: https://postgr.es/m/[email protected]
Backpatch-through: 17
src/bin/pg_combinebackup/pg_combinebackup.c