From fffa4d870b70a30ccd799a71689cd2ece183c30c Mon Sep 17 00:00:00 2001 From: Fujii Masao Date: Mon, 6 Jul 2026 09:46:15 +0900 Subject: [PATCH] Restore basebackup_progress_done() to preserve ABI Commit e7564ee8cdc, which fixed base backup progress reporting on backup failure, removed the external function basebackup_progress_done() because it was no longer used in core. When that change was backpatched to v15, it introduced an ABI break, which was reported by buildfarm member crake. This commit restores basebackup_progress_done() to preserve ABI compatibility, even though it is no longer used in core, rather than updating the .abi-compliance-history file. Because external backup tools may still call this function. Per buildfarm member crake. Reported-by: Andrew Dunstan Discussion: https://postgr.es/m/CAD5tBcJ+ktrEp=PT8Gq-f=8mA2cDtZMB-hDMV4mMJ+9V46qBeQ@mail.gmail.com Backpatch-through: 15-18 --- src/backend/backup/basebackup_progress.c | 12 ++++++++++++ src/include/backup/basebackup_sink.h | 1 + 2 files changed, 13 insertions(+) diff --git a/src/backend/backup/basebackup_progress.c b/src/backend/backup/basebackup_progress.c index b11524a8954..8bf49013e31 100644 --- a/src/backend/backup/basebackup_progress.c +++ b/src/backend/backup/basebackup_progress.c @@ -246,3 +246,15 @@ basebackup_progress_transfer_wal(void) pgstat_progress_update_param(PROGRESS_BASEBACKUP_PHASE, PROGRESS_BASEBACKUP_PHASE_TRANSFER_WAL); } + +/* + * Advertise that we are no longer performing a backup. + * + * No longer used in core, but kept to preserve ABI compatibility in this + * branch. + */ +void +basebackup_progress_done(void) +{ + pgstat_progress_end_command(); +} diff --git a/src/include/backup/basebackup_sink.h b/src/include/backup/basebackup_sink.h index ac7818b0558..224732e3335 100644 --- a/src/include/backup/basebackup_sink.h +++ b/src/include/backup/basebackup_sink.h @@ -296,5 +296,6 @@ extern void basebackup_progress_wait_checkpoint(void); extern void basebackup_progress_estimate_backup_size(void); extern void basebackup_progress_wait_wal_archive(bbsink_state *); extern void basebackup_progress_transfer_wal(void); +extern void basebackup_progress_done(void); #endif