-
Notifications
You must be signed in to change notification settings - Fork 23
Release-notes-2.14.0 #354
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
rasika-chivate
wants to merge
98
commits into
2.14.0
Choose a base branch
from
Release-notes-2.14.0
base: 2.14.0
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Release-notes-2.14.0 #354
Changes from 48 commits
Commits
Show all changes
98 commits
Select commit
Hold shift + click to select a range
c94e1a7
Release-notes-2.14.0
rasika-chivate 06c3c4d
Update 2.14.0.md
rasika-chivate 211759b
Update 2.14.0.md
rasika-chivate cc0f9bc
Update 2.14.0.md
rasika-chivate 074b860
Update 2.14.0.md
rasika-chivate 91ae7cc
Update 2.14.0.md
rasika-chivate 74abed7
added admo
rasika-chivate 6fe0fc9
Update 2.14.0.md
rasika-chivate 0ef36b2
Update 2.14.0.md
rasika-chivate 969fd4a
Update 2.14.0.md
rasika-chivate 6be3665
Update 2.14.0.md
rasika-chivate a9c26ec
Update 2.14.0.md
rasika-chivate fedc2b4
Update 2.14.0.md
rasika-chivate 5a83e87
Update 2.14.0.md
rasika-chivate d609a4b
Update 2.14.0.md
rasika-chivate e486d7a
Update 2.14.0.md
rasika-chivate 36f4c85
Update 2.14.0.md
rasika-chivate f89d23b
Update 2.14.0.md
rasika-chivate 8161b9c
PBM-1167
rasika-chivate e172265
PBM-1167
rasika-chivate 90902f9
PBM-1638
rasika-chivate 13e8337
PBM-1639
rasika-chivate 790b237
PBM-1653
rasika-chivate 5dd0cbe
PBM-1703
rasika-chivate 565c5d0
Update 2.14.0.md
rasika-chivate 722c93d
PBM-1345
rasika-chivate 6142815
PBM-1472
rasika-chivate 2496dfd
Update 2.14.0.md
rasika-chivate 16acc2b
PBM-1599
rasika-chivate 5cdfd04
PBM-1609
rasika-chivate a0c3f09
PBM-1629
rasika-chivate 01b1ab8
Update 2.14.0.md
rasika-chivate d476abf
Update 2.14.0.md
rasika-chivate 51b8ca8
Update 2.14.0.md
rasika-chivate 5a2cac7
updated the example
rasika-chivate fe66a27
Update docs/release-notes/2.14.0.md
rasika-chivate 86b48e4
Update docs/release-notes/2.14.0.md
rasika-chivate dc72369
Update docs/release-notes/2.14.0.md
rasika-chivate c83e30d
Update docs/release-notes/2.14.0.md
rasika-chivate f1cece3
Update docs/release-notes/2.14.0.md
rasika-chivate 598fac5
Update docs/release-notes/2.14.0.md
rasika-chivate 4e11e92
Update docs/release-notes/2.14.0.md
rasika-chivate 8b33fa0
Update release-notes.md
rasika-chivate 972b744
Update 2.14.0.md
rasika-chivate 3d14e7b
Update 2.14.0.md
rasika-chivate adc483e
removed PBM-1480
rasika-chivate d9cc1f5
Update 2.14.0.md
rasika-chivate 073c013
Update 2.14.0.md
rasika-chivate 707ecca
PBM-1598 Add timeout to admin command _configsvrBalancerStop
rasika-chivate 4263ae3
Update backup-options.md
rasika-chivate eeb5780
Update docs/reference/backup-options.md
rasika-chivate 4d82006
Update docs/reference/backup-options.md
rasika-chivate 8c8e74e
Update docs/reference/backup-options.md
rasika-chivate aa37111
Update docs/reference/backup-options.md
rasika-chivate e975e71
Update backup-options.md
rasika-chivate 818daa2
format fix
rasika-chivate 3aeb0c2
Update backup-options.md
rasika-chivate 0d46b42
Update backup-options.md
rasika-chivate 4aadf1d
PBM-1598: Document what value 0 means for backup.timeouts.balancerStop
Copilot c7af851
Update docs/reference/backup-options.md
rasika-chivate db0059d
Update backup-options.md
rasika-chivate 5285832
Update docs/reference/backup-options.md
rasika-chivate dbb5e59
Update pitr-physical.md
rasika-chivate a192056
Revert "Update pitr-physical.md"
rasika-chivate 4c2a702
PBM-1167
rasika-chivate d415a85
Reconcile PITR oplog behavior: update sharded-cluster bullet to refle…
Copilot d9e6e3d
Update pitr-physical.md
rasika-chivate 3f018af
Merge branch 'PBM-1167-PITR-with-physical-backup-doesnt-recover-data'…
rasika-chivate 603ce23
Update docs/usage/pitr-physical.md
rasika-chivate 2bf8011
Update backup.timeouts.balancerStop description
radoslawszulgo 65cfdae
Merge pull request #358 from percona/PBM-1598-Add-timeout-to-admin-co…
radoslawszulgo 44dc821
Remove balancerStop timeout example from documentation
radoslawszulgo d3b978b
remove PBM-1720 from rel notes
radoslawszulgo 93c887c
Add PBM-1721
radoslawszulgo 5d5c890
PBM-1721 Enhance known limitations documentation
radoslawszulgo b65c601
Update release notes for version 2.14.0
radoslawszulgo f300736
Enhance interactive confirmation for multiple commands
radoslawszulgo 7aacede
updated features list and a description of confirmation prompt
radoslawszulgo 961c542
Fix ConcurrentStreamParts references and the description of optimized…
radoslawszulgo ac13ad3
Update default value description for balancerStop
radoslawszulgo e382267
Fix formatting of PBM CLI command options
radoslawszulgo 99a5197
Merge pull request #359 from percona/PBM-1167-PITR-with-physical-back…
radoslawszulgo 16d4a50
PBM-1600 describe confirmation prompt for restore operations
radoslawszulgo c9dd0dd
PBM-1600 add an admonition that there's a confirmation prompt before …
radoslawszulgo a635058
Apply suggestions from code review
radoslawszulgo 55c9d8c
additional fixes in formating
radoslawszulgo 1b97fd1
Apply suggestions from code review
radoslawszulgo d1b73cb
PBM-1600 fix the pbm restore command in multi-storage page and clarif…
radoslawszulgo 9dd14ce
Merge pull request #364 from percona/PBM-1600-add-confirmation-prompt…
radoslawszulgo 1e30a78
PBM-1638 added kmip key identifier to backup metadata (#365)
radoslawszulgo 244ee68
Apply suggestions from code review
radoslawszulgo 7bf6248
Fix description of highlights in 2.14.0
radoslawszulgo b3cfe50
Update pitr-selective.md
rasika-chivate 24edef2
Fix formatting of limitation on physical restores
radoslawszulgo 3c92ba2
Update physical.md
radoslawszulgo 7a64353
Fix formatting for pre-requisites in pitr-selective.md
radoslawszulgo af1cfeb
Fix formatting and update admonition in documentation
radoslawszulgo 04d48a5
Duplicate notes in restore-selective.md
radoslawszulgo File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,101 @@ | ||
| # 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 | ||
|
|
||
| === "⚡ 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: s3 | ||
| s3: | ||
| endpointUrl: https://minio.example.com | ||
| bucket: pbm-backups | ||
| credentials: | ||
| accessKey: <ACCESS_KEY> | ||
| secretKey: <SECRET_KEY> | ||
|
radoslawszulgo marked this conversation as resolved.
Outdated
|
||
| concurrentStreamParts: true | ||
|
radoslawszulgo marked this conversation as resolved.
Outdated
|
||
| ``` | ||
|
|
||
| === "🖥️ 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 <backup-name> | ||
|
|
||
| You are about to restore backup '<backup-name>' to the current cluster. | ||
| This operation may overwrite existing data. | ||
|
|
||
| Do you want to continue? [y/N]: | ||
| ``` | ||
|
|
||
| ## Changelog | ||
|
|
||
| ### New features | ||
|
|
||
| - [PBM-1598](https://perconadev.atlassian.net/browse/PBM-1598): Added a new parameter, `backup.timeouts.balancerWait` (in minutes), to control how long PBM waits for the MongoDB balancer to stop when executing the admin command `_configsvrBalancerStop`. This change prevents backup and restore operations from hanging indefinitely due to extended chunk migrations. | ||
|
|
||
| ### Improvement | ||
|
|
||
| - [PBM-1167](https://perconadev.atlassian.net/browse/PBM-1167): Physical restore with Point-in-Time Recovery (PITR) has been enhanced to provide more consistent and flexible recovery behavior across replica set nodes. PITR oplog entries are now applied to all nodes, not just the former Primary, ensuring that all nodes have identical data files and oplog history after restore. | ||
|
|
||
| - [PBM-1600](https://perconadev.atlassian.net/browse/PBM-1600): We have added a confirmation prompt to the `pbm restore` command to help avoid accidental restores. Before the restore starts, you will now have to explicitly confirm the action. This change is intended to reduce the chances of running a restore unintentionally. | ||
|
|
||
| - [PBM-1638](https://perconadev.atlassian.net/browse/PBM-1638): Percona Backup for MongoDB (PBM) now provides enhanced support for encrypted data when using external KMS providers, such as KMIP. During backup operations, PBM automatically captures and stores the master encryption key identifier (for example, security.kmip.keyIdentifier) in the backup metadata, even if the identifier is not explicitly defined in `mongod.conf` at the time of the backup. This enables seamless and automated restore workflows without requiring users to manually track or store the encryption key identifier externally. | ||
|
|
||
| - [PBM-1639](https://perconadev.atlassian.net/browse/PBM-1639): Previously, physical restore operations were stuck if Percona Backup for MongoDB (PBM) ignored a shutdown command failure during restore. This issue has been addressed, and PBM now properly handles shutdown command failures, ensuring that restore workflows complete as expected without hanging. | ||
|
|
||
| - [PBM-1653](https://perconadev.atlassian.net/browse/PBM-1653): Improved file upload performance for MinIO-compatible storage by enabling the `ConcurrentStreamParts` option for parallel uploads. | ||
|
|
||
| - [PBM-1703](https://perconadev.atlassian.net/browse/PBM-1703): Previously, PBM generated repeated 404 error messages in S3 storage related to `.pbm.init.pbmpart.1` objects. While these messages did not affect backup integrity, they cluttered logs and consumed storage space. PBM now suppresses these redundant error messages, resulting in cleaner S3 logs and more efficient storage usage during backup initialization. | ||
|
|
||
| - [PBM-1730](https://perconadev.atlassian.net/browse/PBM-1730): Previously, if the balancer was not stopped before initiating a restore, PBM would only log an error followed by a warning from the subsequent balancer status check. While this behavior was generally acceptable for physical restores (since `mongod` is shut down later in the process), it could lead to issues during logical restores. PBM now provides clearer handling of balancer state during restore operations, reducing the risk of restore inconsistencies and improving reliability for logical restore workflows. | ||
|
radoslawszulgo marked this conversation as resolved.
Outdated
|
||
|
|
||
|
radoslawszulgo marked this conversation as resolved.
|
||
| ## Fixed bugs | ||
|
|
||
| - [PBM-1345](https://perconadev.atlassian.net/browse/PBM-1345): Fixed an issue where a PITR slicer failure on one replica set did not stop the overall PITR process. PBM now correctly stops the PITR operation when a slicer fails on any replica set, preventing incomplete or inconsistent PITR execution. | ||
|
|
||
| - [PBM-1472](https://perconadev.atlassian.net/browse/PBM-1472): Fixed an issue where an extra slash in the bucket or prefix configuration caused PBM to fail to save or locate backups in storage. PBM now correctly handles such paths, ensuring reliable backup storage and discovery. | ||
|
|
||
| - [PBM-1586](https://perconadev.atlassian.net/browse/PBM-1586): During backup operations, if the PBM agent crashed, the CLI process continued to wait indefinitely without returning control to the user. This behavior caused stalled sessions and required manual intervention. The issue has now been resolved. | ||
|
|
||
| - [PBM-1599](https://perconadev.atlassian.net/browse/PBM-1599): Fixed an issue where the `pbm-agent` took longer to start a backup, causing `pbm-cli` to timeout and exit prematurely. Now, `pbm-cli` correctly waits for the agent to begin the backup process before proceeding. | ||
|
|
||
| - [PBM-1609](https://perconadev.atlassian.net/browse/PBM-1609): Resolved an issue in restores with PITR enabled where the log incorrectly displayed “**oplog slicer disabled**” while PBM continued attempting to upload oplog slices. The restore process now correctly reflects the PITR state and avoids unnecessary oplog slice uploads. | ||
|
|
||
| - [PBM-1629](https://perconadev.atlassian.net/browse/PBM-1629): Resolved an issue where backups failed because PBM miscalculated collection size when `backup.compression` was set to `none`. Backups now complete successfully with compression disabled. | ||
|
|
||
| - [PBM-1648](https://perconadev.atlassian.net/browse/PBM-1648): Resolved an issue with `pbm backup --wait` where the command continued waiting even after the backup had failed, and did not return a non-zero error code. The command now correctly exits with a non-zero code when a backup failure is detected. | ||
|
|
||
| - [PBM-1657](https://perconadev.atlassian.net/browse/PBM-1657): Resolved an issue in the PBM CLI that prevented the correct parsing of `mongodb+srv` URIs and returned an inaccurate error message stating “**unescaped colon in password**”, although no colon was present. The CLI now properly parses `mongodb+srv` URIs and provides an accurate error message. | ||
|
|
||
| - [PBM-1683](https://perconadev.atlassian.net/browse/PBM-1683): Fixed an issue where `pbm describe-backup` reported an incorrect, inflated value for `size_uncompressed_h` on non-base incremental backups. This field now accurately reflects the uncompressed size of the incremental data rather than cumulative or bloated values. | ||
|
|
||
| - [PBM-1720](https://perconadev.atlassian.net/browse/PBM-1720): Improved the implementation and documentation for the `storage.s3.debugLogLevels` configuration setting. This fix ensures that S3 storage debug logs are correctly captured and provides clearer guidance on using available log levels to troubleshoot S3 connectivity and performance issues. | ||
|
radoslawszulgo marked this conversation as resolved.
Outdated
|
||
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.