aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/backend/access/transam/timeline.c6
-rw-r--r--src/backend/access/transam/xlog.c8
-rw-r--r--src/include/access/xlog_internal.h1
3 files changed, 5 insertions, 10 deletions
diff --git a/src/backend/access/transam/timeline.c b/src/backend/access/transam/timeline.c
index 51b37ca8f8c..921da62c22a 100644
--- a/src/backend/access/transam/timeline.c
+++ b/src/backend/access/transam/timeline.c
@@ -92,7 +92,7 @@ readTimeLineHistory(TimeLineID targetTLI)
return list_make1(entry);
}
- if (InArchiveRecovery)
+ if (ArchiveRecoveryRequested)
{
TLHistoryFileName(histfname, targetTLI);
fromArchive =
@@ -213,7 +213,7 @@ existsTimeLineHistory(TimeLineID probeTLI)
if (probeTLI == 1)
return false;
- if (InArchiveRecovery)
+ if (ArchiveRecoveryRequested)
{
TLHistoryFileName(histfname, probeTLI);
RestoreArchivedFile(path, histfname, "RECOVERYHISTORY", 0, false);
@@ -316,7 +316,7 @@ writeTimeLineHistory(TimeLineID newTLI, TimeLineID parentTLI,
/*
* If a history file exists for the parent, copy it verbatim
*/
- if (InArchiveRecovery)
+ if (ArchiveRecoveryRequested)
{
TLHistoryFileName(histfname, parentTLI);
RestoreArchivedFile(path, histfname, "RECOVERYHISTORY", 0, false);
diff --git a/src/backend/access/transam/xlog.c b/src/backend/access/transam/xlog.c
index d960bbcc208..a02eebcb27a 100644
--- a/src/backend/access/transam/xlog.c
+++ b/src/backend/access/transam/xlog.c
@@ -200,7 +200,7 @@ static int LocalXLogInsertAllowed = -1;
* will switch to using offline XLOG archives as soon as we reach the end of
* WAL in pg_xlog.
*/
-static bool ArchiveRecoveryRequested = false;
+bool ArchiveRecoveryRequested = false;
bool InArchiveRecovery = false;
/* Was the last xlog file restored from archive, or local? */
@@ -4339,11 +4339,6 @@ readRecoveryCommandFile(void)
*/
if (rtliGiven)
{
- /*
- * Temporarily set InArchiveRecovery, so that existsTimeLineHistory
- * or findNewestTimeLine below will check the archive.
- */
- InArchiveRecovery = true;
if (rtli)
{
/* Timeline 1 does not have a history file, all else should */
@@ -4360,7 +4355,6 @@ readRecoveryCommandFile(void)
recoveryTargetTLI = findNewestTimeLine(recoveryTargetTLI);
recoveryTargetIsLatest = true;
}
- InArchiveRecovery = false;
}
FreeConfigVariables(head);
diff --git a/src/include/access/xlog_internal.h b/src/include/access/xlog_internal.h
index c996c3c3ad8..351bb31d56c 100644
--- a/src/include/access/xlog_internal.h
+++ b/src/include/access/xlog_internal.h
@@ -263,6 +263,7 @@ extern void GetOldestRestartPoint(XLogRecPtr *oldrecptr, TimeLineID *oldtli);
* Exported for the functions in timeline.c and xlogarchive.c. Only valid
* in the startup process.
*/
+extern bool ArchiveRecoveryRequested;
extern bool InArchiveRecovery;
extern bool StandbyMode;
extern char *recoveryRestoreCommand;