postgres.git / summary / log / commit / refs

commit    6547a2f6cccf8cfbfdd91a0b278bb65f0b00bdd2
Author:   Daniel Gustafsson <dgustafsson@postgresql.org>
Date:     Mon Sep 14 13:33:24 2026 +0000

    Don't log page zeroing when checksum failures are ignored
    
    When checksum failures are ignored, the page won't be zeroed on error
    even if zero_damaged_pages is set.  Found via review by GPT-6.
    
    Author: Daniel Gustafsson <daniel@yesql.se>
    Discussion: https://postgr.es/m/E15AC050-C4B5-488D-BB2D-3C7AC9F89EA8@yesql.se
    Backpatch-through: 19


src/backend/storage/page/bufpage.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/backend/storage/page/bufpage.c b/src/backend/storage/page/bufpage.c index 8df74618fcd..a6d6e13f0b3 100644 --- a/src/backend/storage/page/bufpage.c +++ b/src/backend/storage/page/bufpage.c @@ -160,7 +160,7 @@ PageIsVerified(PageData *page, BlockNumber blkno, int flags, bool *checksum_fail if ((flags & (PIV_LOG_WARNING | PIV_LOG_LOG)) != 0) ereport(flags & PIV_LOG_WARNING ? WARNING : LOG, (errcode(ERRCODE_DATA_CORRUPTED), - (flags & PIV_ZERO_BUFFERS_ON_ERROR) ? + ((flags & PIV_ZERO_BUFFERS_ON_ERROR) && !(flags & PIV_IGNORE_CHECKSUM_FAILURE)) ? errmsg("page verification failed, calculated checksum %u but expected %u, buffer will be zeroed", checksum, p->pd_checksum) : errmsg("page verification failed, calculated checksum %u but expected %u", [parent: cffb4d8bd65e]