]> granicus.if.org Git - postgresql/commitdiff
Print WAL position correctly in pg_rewind error message.
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>
Tue, 30 Jul 2019 18:14:14 +0000 (21:14 +0300)
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>
Tue, 30 Jul 2019 18:14:41 +0000 (21:14 +0300)
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

index 1689279767f1a055c48dd2274705911d301069b2..8641dce306f7e934587a520eb04ee3b18dfdea40 100644 (file)
@@ -90,8 +90,7 @@ extractPageMap(const char *datadir, XLogRecPtr startpoint, int tliIndex,
                                                 errormsg);
                        else
                                pg_fatal("could not read WAL record at %X/%X\n",
-                                                (uint32) (startpoint >> 32),
-                                                (uint32) (startpoint));
+                                                (uint32) (errptr >> 32), (uint32) (errptr));
                }
 
                extractPageInfo(xlogreader);