0001-Use-PG_IO_ALIGN_SIZE-for-aligning-WAL-buffers.patch

text/plain

Filename: 0001-Use-PG_IO_ALIGN_SIZE-for-aligning-WAL-buffers.patch
Type: text/plain
Part: 0
Message: missing PG_IO_ALIGN_SIZE uses

Patch

Same data as JSON: GET /api/v1/attachments/:id/patch the parsed metadata as JSON — format, series position, per-file stats; never the diff bytes. API reference →
Format: format-patch
Series: patch 0001
Subject: Use PG_IO_ALIGN_SIZE for aligning WAL buffers
File+
src/backend/access/transam/xlog.c 2 2
src/bin/pg_test_fsync/pg_test_fsync.c 1 1
From ff51fe7b0cf210f58549c1c3b67bd3175de2e8f7 Mon Sep 17 00:00:00 2001
From: Peter Eisentraut <peter@eisentraut.org>
Date: Mon, 1 Dec 2025 08:06:26 +0100
Subject: [PATCH 1/3] Use PG_IO_ALIGN_SIZE for aligning WAL buffers

There are two places that were apparently forgotten in commit faeedbcefd4.
---
 src/backend/access/transam/xlog.c     | 4 ++--
 src/bin/pg_test_fsync/pg_test_fsync.c | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/backend/access/transam/xlog.c b/src/backend/access/transam/xlog.c
index 22d0a2e8c3a..44e1d4eeabd 100644
--- a/src/backend/access/transam/xlog.c
+++ b/src/backend/access/transam/xlog.c
@@ -5119,8 +5119,8 @@ BootStrapXLOG(uint32 data_checksum_version)
 	sysidentifier |= getpid() & 0xFFF;
 
 	/* page buffer must be aligned suitably for O_DIRECT */
-	buffer = (char *) palloc(XLOG_BLCKSZ + XLOG_BLCKSZ);
-	page = (XLogPageHeader) TYPEALIGN(XLOG_BLCKSZ, buffer);
+	buffer = (char *) palloc(XLOG_BLCKSZ + PG_IO_ALIGN_SIZE);
+	page = (XLogPageHeader) TYPEALIGN(PG_IO_ALIGN_SIZE, buffer);
 	memset(page, 0, XLOG_BLCKSZ);
 
 	/*
diff --git a/src/bin/pg_test_fsync/pg_test_fsync.c b/src/bin/pg_test_fsync/pg_test_fsync.c
index 0060ea15902..a63d6f1a54f 100644
--- a/src/bin/pg_test_fsync/pg_test_fsync.c
+++ b/src/bin/pg_test_fsync/pg_test_fsync.c
@@ -234,7 +234,7 @@ prepare_buf(void)
 	for (ops = 0; ops < DEFAULT_XLOG_SEG_SIZE; ops++)
 		full_buf[ops] = (char) pg_prng_int32(&pg_global_prng_state);
 
-	buf = (char *) TYPEALIGN(XLOG_BLCKSZ, full_buf);
+	buf = (char *) TYPEALIGN(PG_IO_ALIGN_SIZE, full_buf);
 }
 
 static void

base-commit: d03668ea0566b53522cf2628ab7aa630247640a4
-- 
2.52.0