From de5b9b00867e39e73dc99a1ee61a814cead1ab7d Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Wed, 18 Mar 2026 13:44:01 +0900 Subject: [PATCH] Add consistency check for shmem and on-disk control file --- src/backend/access/transam/xlog.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/backend/access/transam/xlog.c b/src/backend/access/transam/xlog.c index c8ea1ea49d24..0f8516fcb563 100644 --- a/src/backend/access/transam/xlog.c +++ b/src/backend/access/transam/xlog.c @@ -9606,6 +9606,17 @@ backup_control_file(uint8_t *controlFile) LWLockAcquire(ControlFileLock, LW_SHARED); memcpy(controlFile, ControlFile, sizeof(ControlFileData)); + +#ifdef USE_ASSERT_CHECKING + { + bool crc_ok; + ControlFileData *dataDisk = get_controlfile(DataDir, &crc_ok); + + Assert(crc_ok && + memcmp(dataDisk, ControlFile, sizeof(ControlFileData)) == 0); + } +#endif + LWLockRelease(ControlFileLock); controlData->backupLabelRequired = true; -- 2.53.0