From 718e313244a9376d823b5efe421eb079474a6b20 Mon Sep 17 00:00:00 2001 From: Heikki Linnakangas Date: Tue, 30 Jul 2019 21:14:14 +0300 Subject: [PATCH] Print WAL position correctly in pg_rewind error message. This has been wrong ever since pg_rewind was added. The if-branch just above this, where we print the same error with an extra message supplied by XLogReadRecord() got this right, but the variable name was wrong in the else-branch. As a consequence, the error printed the WAL position as 0/0 if there was an error reading a WAL file. Backpatch to 9.5, where pg_rewind was added. --- src/bin/pg_rewind/parsexlog.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/bin/pg_rewind/parsexlog.c b/src/bin/pg_rewind/parsexlog.c index 287af60c4e..f0439edce3 100644 --- a/src/bin/pg_rewind/parsexlog.c +++ b/src/bin/pg_rewind/parsexlog.c @@ -89,8 +89,7 @@ extractPageMap(const char *datadir, XLogRecPtr startpoint, int tliIndex, errormsg); else pg_fatal("could not read WAL record at %X/%X", - (uint32) (startpoint >> 32), - (uint32) (startpoint)); + (uint32) (errptr >> 32), (uint32) (errptr)); } extractPageInfo(xlogreader);