EnterpriseDB / barman

Barman - Backup and Recovery Manager for PostgreSQL
https://www.pgbarman.org/
GNU General Public License v3.0
2.14k stars 193 forks source link

Fix failures in `barman-cloud-backup-delete` related with incrementals #1004

Closed barthisrael closed 3 months ago

barthisrael commented 3 months ago

Through Barman 3.11.0 we introduced native PG17+ incremental backups. Some changes have been made to the backup metadata to support that.

As part of the changes, we introduced a few properties to the class LocalBackupInfo. However, there was an oversight in some code paths which are shared between local and cloud backups.

For example, when running barman-cloud-backup-delete, that command reuses the retention policy classes. These, in their turn, attempt to access the aforementioned properties.

This commit fixes the issue by moving the new properties to the base BackupInfo class, so they are available both for local and for cloud backups.

The properties has_children and is_incremental will always return False for cloud backups. Analagously, deduplication_ratio and backup_type are not expected to be used in any code path related with cloud backups. With that in mind, moving these properties to the base classe should not cause a problem.

References: BAR-284.

barthisrael commented 3 months ago

We have no CODEOWNER available right now, but we agreed on a call earlier today that we would merge this PR and proceed with a patch release.