From c5e9b487504aeb4451267f9e7f990db7bc0a275e Mon Sep 17 00:00:00 2001 From: "Anton A. Melnikov" Date: Fri, 7 Feb 2025 02:57:34 +0300 Subject: [PATCH] Mark buffer dirty for FSM pages that were newly inited. E.g. after zeroing damaged pages. --- src/backend/storage/freespace/freespace.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/backend/storage/freespace/freespace.c b/src/backend/storage/freespace/freespace.c index 4773a9cc65e6..a6479977c6d5 100644 --- a/src/backend/storage/freespace/freespace.c +++ b/src/backend/storage/freespace/freespace.c @@ -614,7 +614,10 @@ fsm_readbuf(Relation rel, FSMAddress addr, bool extend) { LockBuffer(buf, BUFFER_LOCK_EXCLUSIVE); if (PageIsNew(BufferGetPage(buf))) + { PageInit(BufferGetPage(buf), BLCKSZ, 0); + MarkBufferDirty(buf); + } LockBuffer(buf, BUFFER_LOCK_UNLOCK); } return buf;