diff --git a/docs/release-notes/2.14.0.md b/docs/release-notes/2.14.0.md new file mode 100644 index 00000000..a9ebf8e9 --- /dev/null +++ b/docs/release-notes/2.14.0.md @@ -0,0 +1,103 @@ +# Percona Backup for MongoDB 2.14.0 ({{date.2_14_0}}) + +- [Installation](../installation.md){.md-button} + + +Percona Backup for MongoDB (PBM) is a distributed, low-impact solution for creating consistent backups of MongoDB sharded clusters and replica sets, and restoring them to a specific point in time. + +## Release highlights + +=== "🖥️ Interactive confirmation prompt" + + !!! warning "Breaking change" + + Since an interactive prompt is now printed, automation and scripts must use the `-y` flag to bypass this confirmation (same as for delete operations). + + + ### Interactive confirmation for restore + To reduce the risk of accidental or unintended restores, `pbm restore` command now includes an interactive confirmation prompt. This requires explicit user approval before a restore action is executed. + + This change addresses scenarios where users might inadvertently re‑run a previous restore command from shell history, potentially restoring the wrong backup to production. With the new confirmation step, restores are safer and less prone to human error. + + ```bash + $ pbm restore + + You are about to restore backup '' to the current cluster. + This operation may overwrite existing data. + + Do you want to continue? [y/N]: + ``` + +=== "⚡ Optimized backup uploads" + + ### Concurrent streaming for faster MinIO uploads + + This release introduces support for the `ConcurrentStreamParts` option when uploading files to MinIO storage. By enabling concurrent part uploads, large file transfers can achieve improved throughput and efficiency. + + To ensure reliability, PBM includes built‑in optimizations and fallbacks: + + - **Small files:** If the file is smaller than the upload part size, concurrent upload is automatically disabled (since it’s unnecessary). + + - **Empty streams:** If the MinIO library reports an unexpected error for empty streams, PBM will retry the request with ConcurrentStreamParts disabled. + + These safeguards ensure that concurrent uploads deliver performance benefits without compromising stability. + + ??? example "Example" + + ```yaml + storage: + type: minio + endpointUrl: https://minio.example.com + bucket: pbm-backups + credentials: + accessKey: + secretKey: + concurrentStreamParts: true + ``` + + +## Changelog + +### New features + +- [PBM-1598](https://perconadev.atlassian.net/browse/PBM-1598) Add timeout to admin command \_configsvrBalancerStop + +### Improvements + +- [PBM-1167](https://perconadev.atlassian.net/browse/PBM-1167) PiTR with physical backup doesn't recover data + +- [PBM-1480](https://perconadev.atlassian.net/browse/PBM-1480) Allow PBM Agent to start with read-only storage for restore validation + +- [PBM-1600](https://perconadev.atlassian.net/browse/PBM-1600) Interactive confirm prompt when restore + +- [PBM-1638](https://perconadev.atlassian.net/browse/PBM-1638) Automatic Inclusion of KMIP Key Identifier in Physical Backup Metadata + +- [PBM-1639](https://perconadev.atlassian.net/browse/PBM-1639) Physical restore stucks since PBM ignores shutdown command failure + +- [PBM-1653](https://perconadev.atlassian.net/browse/PBM-1653) Enable concurrent uploads for MinIO storage type + +- [PBM-1703](https://perconadev.atlassian.net/browse/PBM-1703) 404 messages on S3 because .pbm.init.pbmpart.1 + +- [PBM-1730](https://perconadev.atlassian.net/browse/PBM-1730) Abort restore when balancer stop fails + +### Bugs + +- [PBM-1345](https://perconadev.atlassian.net/browse/PBM-1345) Fail of PITR slicer on one RS doesn't stop the whole PITR process + +- [PBM-1472](https://perconadev.atlassian.net/browse/PBM-1472) Extra slash symbol in bucket/prefix options breaks PBM ability to save or discover backups on storage + +- [PBM-1586](https://perconadev.atlassian.net/browse/PBM-1586) CLI waits infinitely when agent crashes during the backup execution + +- [PBM-1599](https://perconadev.atlassian.net/browse/PBM-1599) pbm-cli fails with timeout when stopping the balancer takes longer + +- [PBM-1609](https://perconadev.atlassian.net/browse/PBM-1609) Oplog slicer not stopped during restore + +- [PBM-1629](https://perconadev.atlassian.net/browse/PBM-1629) Backup fails since PBM miscalculates collection size when backup.compression is set to none + +- [PBM-1648](https://perconadev.atlassian.net/browse/PBM-1648) pbm --wait does not return error on backup failure + +- [PBM-1657](https://perconadev.atlassian.net/browse/PBM-1657) Support mongodb\+srv protocol for PBM CLI connection strings + +- [PBM-1683](https://perconadev.atlassian.net/browse/PBM-1683) size\_uncompressed\_h reporting bloated size for incremental backups + +