diff options
author | Heikki Linnakangas <heikki.linnakangas@iki.fi> | 2024-08-08 10:20:25 +0300 |
---|---|---|
committer | Heikki Linnakangas <heikki.linnakangas@iki.fi> | 2024-08-08 10:20:25 +0300 |
commit | 49dc191bd1ae30180597c33e7f75a9950b896ccc (patch) | |
tree | 2f118019729c3c2085ea192920f7759151eaff36 | |
parent | e56ccc8e4204d9faf86f3bd2e435a0788b3d0429 (diff) | |
download | postgresql-49dc191bd1ae30180597c33e7f75a9950b896ccc.tar.gz postgresql-49dc191bd1ae30180597c33e7f75a9950b896ccc.zip |
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
-rw-r--r-- | src/bin/pg_rewind/pg_rewind.c | 6 |
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 0841ab4135b..323c35646c9 100644 --- a/src/bin/pg_rewind/pg_rewind.c +++ b/src/bin/pg_rewind/pg_rewind.c @@ -882,6 +882,7 @@ getTimelineHistory(TimeLineID tli, bool is_source, int *nentries) pg_free(histfile); } + /* In debugging mode, print what we read */ if (debug) { int i; @@ -891,10 +892,7 @@ getTimelineHistory(TimeLineID tli, bool is_source, int *nentries) else pg_log_debug("Target timeline history:"); - /* - * Print the target timeline history. - */ - for (i = 0; i < targetNentries; i++) + for (i = 0; i < *nentries; i++) { TimeLineHistoryEntry *entry; |