diff options
author | Stephen Frost <sfrost@snowman.net> | 2022-04-06 14:41:03 -0400 |
---|---|---|
committer | Stephen Frost <sfrost@snowman.net> | 2022-04-06 14:41:03 -0400 |
commit | 39969e2a1e4d7f5a37f3ef37d53bbfe171e7d77a (patch) | |
tree | 7b1e10c1147783ef0a21b76d78657921696be791 /src/include/access/xlog.h | |
parent | 14d3f24fa8a21f8a7e66f1fc60253a1e11410bf3 (diff) |
Remove exclusive backup mode
Exclusive-mode backups have been deprecated since 9.6 (when
non-exclusive backups were introduced) due to the issues
they can cause should the system crash while one is running and
generally because non-exclusive provides a much better interface.
Further, exclusive backup mode wasn't really being tested (nor was most
of the related code- like being able to log in just to stop an exclusive
backup and the bits of the state machine related to that) and having to
possibly deal with an exclusive backup and the backup_label file
existing during pg_basebackup, pg_rewind, etc, added other complexities
that we are better off without.
This patch removes the exclusive backup mode, the various special cases
for dealing with it, and greatly simplifies the online backup code and
documentation.
Authors: David Steele, Nathan Bossart
Reviewed-by: Chapman Flack
Discussion: https://postgr.es/m/ac7339ca-3718-3c93-929f-99e725d1172c@pgmasters.net
https://postgr.es/m/CAHg+QDfiM+WU61tF6=nPZocMZvHDzCK47Kneyb0ZRULYzV5sKQ@mail.gmail.com
Diffstat (limited to 'src/include/access/xlog.h')
-rw-r--r-- | src/include/access/xlog.h | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/include/access/xlog.h b/src/include/access/xlog.h index 09f6464331b..b81917f243d 100644 --- a/src/include/access/xlog.h +++ b/src/include/access/xlog.h @@ -276,14 +276,13 @@ extern void XLogShutdownWalRcv(void); typedef enum SessionBackupState { SESSION_BACKUP_NONE, - SESSION_BACKUP_EXCLUSIVE, - SESSION_BACKUP_NON_EXCLUSIVE + SESSION_BACKUP_RUNNING, } SessionBackupState; -extern XLogRecPtr do_pg_start_backup(const char *backupidstr, bool fast, +extern XLogRecPtr do_pg_backup_start(const char *backupidstr, bool fast, TimeLineID *starttli_p, StringInfo labelfile, List **tablespaces, StringInfo tblspcmapfile); -extern XLogRecPtr do_pg_stop_backup(char *labelfile, bool waitforarchive, +extern XLogRecPtr do_pg_backup_stop(char *labelfile, bool waitforarchive, TimeLineID *stoptli_p); extern void do_pg_abort_backup(int code, Datum arg); extern void register_persistent_abort_backup_handler(void); |