From c717525035d36e10d27ca045887bbfcc57e98e9e Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Sun, 4 Feb 2024 10:51:53 +0900 Subject: [PATCH] pg_basebackup: Fix check for MINIMUM_VERSION_FOR_WAL_SUMMARIES MINIMUM_VERSION_FOR_WAL_SUMMARIES is used to check if the directory pg_wal/summaries/ should be created in a base backup, but its condition was reversed: pg_wal/summaries/ would be created when taking base backups from backends of v16 and older versions, but it should be created in base backups taken from backends of v17 and newer versions. Author: Artur Zakirov Reviewed-by: Yugo Nagata, Nazir Bilal Yavuz Discussion: https://postgr.es/m/CAKNkYnzkkQ0gb_ZmLTY0r2-qV1q6imXgcCWxdA6UoA6yJkujGg@mail.gmail.com --- src/bin/pg_basebackup/pg_basebackup.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/bin/pg_basebackup/pg_basebackup.c b/src/bin/pg_basebackup/pg_basebackup.c index 77489af5188..3a9940097c6 100644 --- a/src/bin/pg_basebackup/pg_basebackup.c +++ b/src/bin/pg_basebackup/pg_basebackup.c @@ -700,14 +700,12 @@ StartLogStreamer(char *startpos, uint32 timeline, char *sysidentifier, /* * For newer server versions, likewise create pg_wal/summaries */ - if (PQserverVersion(conn) < MINIMUM_VERSION_FOR_WAL_SUMMARIES) + if (PQserverVersion(conn) >= MINIMUM_VERSION_FOR_WAL_SUMMARIES) { char summarydir[MAXPGPATH]; snprintf(summarydir, sizeof(summarydir), "%s/%s/summaries", - basedir, - PQserverVersion(conn) < MINIMUM_VERSION_FOR_PG_WAL ? - "pg_xlog" : "pg_wal"); + basedir, "pg_wal"); if (pg_mkdir_p(summarydir, pg_dir_create_mode) != 0 && errno != EEXIST)