summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>2024-08-08 10:20:25 +0300
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>2024-08-08 10:22:39 +0300
commitbb5592caceded690451869ac098b55dbb2142dfc (patch)
treeaa4716d40601c2b37a4621e63b690b9885c3109f /src
parent3557185538fe7b2e2a04b52a5ed8250597cd0a2d (diff)
Fix pg_rewind debug output to print the source timeline history
getTimelineHistory() is called twice, to read the source and the target timeline history files. However, the loop to print the file with the --debug option used the wrong variable when dealing with the source. As a result, the source's history was always printed as empty. Spotted while debugging bug #18575, but this does not fix that bug, just the debugging output. Backpatch to all supported versions. Discussion: https://www.postgresql.org/message-id/092dd515-b7b4-4fd0-8407-ceca2f02f6ec@iki.fi
Diffstat (limited to 'src')
-rw-r--r--src/bin/pg_rewind/pg_rewind.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/bin/pg_rewind/pg_rewind.c b/src/bin/pg_rewind/pg_rewind.c
index 2ac4910778b..1ec63e78ec8 100644
--- a/src/bin/pg_rewind/pg_rewind.c
+++ b/src/bin/pg_rewind/pg_rewind.c
@@ -838,6 +838,7 @@ getTimelineHistory(ControlFileData *controlFile, int *nentries)
pg_free(histfile);
}
+ /* In debugging mode, print what we read */
if (debug)
{
int i;
@@ -849,10 +850,7 @@ getTimelineHistory(ControlFileData *controlFile, int *nentries)
else
Assert(false);
- /*
- * Print the target timeline history.
- */
- for (i = 0; i < targetNentries; i++)
+ for (i = 0; i < *nentries; i++)
{
TimeLineHistoryEntry *entry;