From 5c215c941c3f6d6d2f5faf7bef6262373594977c Mon Sep 17 00:00:00 2001 From: Alvaro Herrera Date: Wed, 24 Jun 2020 13:57:21 -0400 Subject: [PATCH] Add parens to ConvertToXSegs macro MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The current definition (introduced in 9a3215026bd6) is dangerous. No bugs exist in our code at present, but backpatch to 11 nonetheless, where that commit debuted. Author: Álvaro Herrera --- src/backend/access/transam/xlog.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/backend/access/transam/xlog.c b/src/backend/access/transam/xlog.c index bceef897d6e..28292393d19 100644 --- a/src/backend/access/transam/xlog.c +++ b/src/backend/access/transam/xlog.c @@ -738,9 +738,12 @@ static ControlFileData *ControlFile = NULL; */ #define UsableBytesInPage (XLOG_BLCKSZ - SizeOfXLogShortPHD) -/* Convert min_wal_size_mb and max wal_size_mb to equivalent segment count */ +/* + * Convert min_wal_size_mb and max wal_size_mb to equivalent segment count. + * Rounds down. + */ #define ConvertToXSegs(x, segsize) \ - (x / ((segsize) / (1024 * 1024))) + ((x) / ((segsize) / (1024 * 1024))) /* The number of bytes in a WAL segment usable for WAL data. */ static int UsableBytesInSegment;