From bc1229c83238a0d71a3923cb48e53ea7ea37654c Mon Sep 17 00:00:00 2001
From: Heikki Linnakangas <heikki.linnakangas@iki.fi>
Date: Wed, 3 Oct 2012 09:08:13 +0300
Subject: [PATCH] Fix two bugs introduced in the xlog.c split.

The comment explaining the naming of timeline history files was wrong, and
the history file was not being arhived.

Pointed out by Fujii Masao.
---
 src/backend/access/transam/timeline.c | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/src/backend/access/transam/timeline.c b/src/backend/access/transam/timeline.c
index 810467d474d..f3632c572a7 100644
--- a/src/backend/access/transam/timeline.c
+++ b/src/backend/access/transam/timeline.c
@@ -6,10 +6,9 @@
  * A timeline history file lists the timeline changes of the timeline, in
  * a simple text format. They are archived along with the WAL segments.
  *
- * The files are named like "<WAL segment>.history". For example, if the
- * database starts up and switches to timeline 5, while processing WAL
- * segment 000000030000002A00000006 (the old timeline was 3), the timeline
- * history file would be called "000000050000002A00000006.history".
+ * The files are named like "<tli>.history". For example, if the database
+ * starts up and switches to timeline 5, the timeline history file would be
+ * called "00000005.history".
  *
  * Each line in the file represents a timeline switch:
  *
@@ -376,4 +375,8 @@ writeTimeLineHistory(TimeLineID newTLI, TimeLineID parentTLI,
 				 errmsg("could not rename file \"%s\" to \"%s\": %m",
 						tmppath, path)));
 #endif
+
+	/* The history file can be archived immediately. */
+	TLHistoryFileName(histfname, newTLI);
+	XLogArchiveNotify(histfname);
 }
-- 
GitLab