diff options
Diffstat (limited to 'src/backend/replication/basebackup.c')
-rw-r--r-- | src/backend/replication/basebackup.c | 16 |
1 files changed, 2 insertions, 14 deletions
diff --git a/src/backend/replication/basebackup.c b/src/backend/replication/basebackup.c index 1fa4551eff2..1bb72a0a57e 100644 --- a/src/backend/replication/basebackup.c +++ b/src/backend/replication/basebackup.c @@ -65,7 +65,6 @@ static int64 _tarWriteDir(const char *pathbuf, int basepathlen, struct stat *sta bool sizeonly); static void send_int8_string(StringInfoData *buf, int64 intval); static void SendBackupHeader(List *tablespaces); -static void base_backup_cleanup(int code, Datum arg); static void perform_base_backup(basebackup_options *opt); static void parse_basebackup_options(List *options, basebackup_options *opt); static void SendXlogRecPtrResult(XLogRecPtr ptr, TimeLineID tli); @@ -216,17 +215,6 @@ static const char *const noChecksumFiles[] = { NULL, }; - -/* - * Called when ERROR or FATAL happens in perform_base_backup() after - * we have started the backup - make sure we end it! - */ -static void -base_backup_cleanup(int code, Datum arg) -{ - do_pg_abort_backup(); -} - /* * Actually do a base backup for the specified tablespaces. * @@ -265,7 +253,7 @@ perform_base_backup(basebackup_options *opt) * do_pg_stop_backup() should be inside the error cleanup block! */ - PG_ENSURE_ERROR_CLEANUP(base_backup_cleanup, (Datum) 0); + PG_ENSURE_ERROR_CLEANUP(do_pg_abort_backup, BoolGetDatum(false)); { ListCell *lc; tablespaceinfo *ti; @@ -374,7 +362,7 @@ perform_base_backup(basebackup_options *opt) endptr = do_pg_stop_backup(labelfile->data, !opt->nowait, &endtli); } - PG_END_ENSURE_ERROR_CLEANUP(base_backup_cleanup, (Datum) 0); + PG_END_ENSURE_ERROR_CLEANUP(do_pg_abort_backup, BoolGetDatum(false)); if (opt->includewal) |