mirror of
https://github.com/postgres/postgres.git
synced 2025-09-03 15:22:11 +03:00
Split off functions related to timeline history files and XLOG archiving.
This is just refactoring, to make the functions accessible outside xlog.c. A followup patch will make use of that, to allow fetching timeline history files over streaming replication.
This commit is contained in:
23
src/include/access/timeline.h
Normal file
23
src/include/access/timeline.h
Normal file
@@ -0,0 +1,23 @@
|
||||
/*
|
||||
* timeline.h
|
||||
*
|
||||
* Functions for reading and writing timeline history files.
|
||||
*
|
||||
* Portions Copyright (c) 1996-2012, PostgreSQL Global Development Group
|
||||
* Portions Copyright (c) 1994, Regents of the University of California
|
||||
*
|
||||
* src/include/access/timeline.h
|
||||
*/
|
||||
#ifndef TIMELINE_H
|
||||
#define TIMELINE_H
|
||||
|
||||
#include "access/xlogdefs.h"
|
||||
#include "nodes/pg_list.h"
|
||||
|
||||
extern List *readTimeLineHistory(TimeLineID targetTLI);
|
||||
extern bool existsTimeLineHistory(TimeLineID probeTLI);
|
||||
extern TimeLineID findNewestTimeLine(TimeLineID startTLI);
|
||||
extern void writeTimeLineHistory(TimeLineID newTLI, TimeLineID parentTLI,
|
||||
TimeLineID endTLI, XLogSegNo endLogSegNo, char *reason);
|
||||
|
||||
#endif /* TIMELINE_H */
|
@@ -229,6 +229,29 @@ extern const RmgrData RmgrTable[];
|
||||
extern pg_time_t GetLastSegSwitchTime(void);
|
||||
extern XLogRecPtr RequestXLogSwitch(void);
|
||||
|
||||
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 InArchiveRecovery;
|
||||
extern bool StandbyMode;
|
||||
extern char *recoveryRestoreCommand;
|
||||
|
||||
/*
|
||||
* Prototypes for functions in xlogarchive.c
|
||||
*/
|
||||
extern bool RestoreArchivedFile(char *path, const char *xlogfname,
|
||||
const char *recovername, off_t expectedSize);
|
||||
extern void ExecuteRecoveryCommand(char *command, char *commandName,
|
||||
bool failOnerror);
|
||||
extern void XLogArchiveNotify(const char *xlog);
|
||||
extern void XLogArchiveNotifySeg(XLogSegNo segno);
|
||||
extern bool XLogArchiveCheckDone(const char *xlog);
|
||||
extern bool XLogArchiveIsBusy(const char *xlog);
|
||||
extern void XLogArchiveCleanup(const char *xlog);
|
||||
|
||||
/*
|
||||
* These aren't in xlog.h because I'd rather not include fmgr.h there.
|
||||
*/
|
||||
|
Reference in New Issue
Block a user