diff options
Diffstat (limited to 'src/include')
-rw-r--r-- | src/include/access/xlog.h | 39 | ||||
-rw-r--r-- | src/include/utils/guc_tables.h | 2 |
2 files changed, 38 insertions, 3 deletions
diff --git a/src/include/access/xlog.h b/src/include/access/xlog.h index e01d12eb7c8..f3a7ba4d421 100644 --- a/src/include/access/xlog.h +++ b/src/include/access/xlog.h @@ -75,7 +75,7 @@ extern HotStandbyState standbyState; /* * Recovery target type. - * Only set during a Point in Time recovery, not when standby_mode = on + * Only set during a Point in Time recovery, not when in standby mode. */ typedef enum { @@ -87,6 +87,16 @@ typedef enum RECOVERY_TARGET_IMMEDIATE } RecoveryTargetType; +/* + * Recovery target TimeLine goal + */ +typedef enum +{ + RECOVERY_TARGET_TIMELINE_CONTROLFILE, + RECOVERY_TARGET_TIMELINE_LATEST, + RECOVERY_TARGET_TIMELINE_NUMERIC +} RecoveryTargetTimeLineGoal; + extern XLogRecPtr ProcLastRecPtr; extern XLogRecPtr XactLastRecEnd; extern PGDLLIMPORT XLogRecPtr XactLastCommitEnd; @@ -109,9 +119,32 @@ extern bool wal_compression; extern bool *wal_consistency_checking; extern char *wal_consistency_checking_string; extern bool log_checkpoints; +extern char *recoveryRestoreCommand; +extern char *recoveryEndCommand; +extern char *archiveCleanupCommand; +extern bool recoveryTargetInclusive; +extern int recoveryTargetAction; +extern int recovery_min_apply_delay; +extern char *PrimaryConnInfo; +extern char *PrimarySlotName; + +/* indirectly set via GUC system */ +extern TransactionId recoveryTargetXid; +extern TimestampTz recoveryTargetTime; +extern char *recoveryTargetName; +extern XLogRecPtr recoveryTargetLSN; +extern RecoveryTargetType recoveryTarget; +extern char *PromoteTriggerFile; +extern RecoveryTargetTimeLineGoal recoveryTargetTimeLineGoal; +extern TimeLineID recoveryTargetTLIRequested; +extern TimeLineID recoveryTargetTLI; extern int CheckPointSegments; +/* option set locally in startup process only when signal files exist */ +extern bool StandbyModeRequested; +extern bool StandbyMode; + /* Archive modes */ typedef enum ArchiveMode { @@ -319,8 +352,8 @@ extern void do_pg_abort_backup(void); extern SessionBackupState get_backup_status(void); /* File path names (all relative to $PGDATA) */ -#define RECOVERY_COMMAND_FILE "recovery.conf" -#define RECOVERY_COMMAND_DONE "recovery.done" +#define RECOVERY_SIGNAL_FILE "recovery.signal" +#define STANDBY_SIGNAL_FILE "standby.signal" #define BACKUP_LABEL_FILE "backup_label" #define BACKUP_LABEL_OLD "backup_label.old" diff --git a/src/include/utils/guc_tables.h b/src/include/utils/guc_tables.h index 668d9efd357..6f9fdb6a5fb 100644 --- a/src/include/utils/guc_tables.h +++ b/src/include/utils/guc_tables.h @@ -69,6 +69,8 @@ enum config_group WAL_SETTINGS, WAL_CHECKPOINTS, WAL_ARCHIVING, + WAL_ARCHIVE_RECOVERY, + WAL_RECOVERY_TARGET, REPLICATION, REPLICATION_SENDING, REPLICATION_MASTER, |