From fa94e6be8a6d9d8d31958684e02432a7bd89151e Mon Sep 17 00:00:00 2001 From: rasika-chivate <95711051+rasika-chivate@users.noreply.github.com> Date: Thu, 11 Jun 2026 11:53:31 +0530 Subject: [PATCH 01/31] PBM-1715 Parallel file processing for backups and restores --- docs/reference/backup-options.md | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/docs/reference/backup-options.md b/docs/reference/backup-options.md index 5f5c052e..8fa1f151 100644 --- a/docs/reference/backup-options.md +++ b/docs/reference/backup-options.md @@ -121,3 +121,21 @@ The duration (in minutes) of oplog slices saved with the logical backup snapshot The number of parallel collections to process during a logical backup. By default, the number of parallel collections is half of the number of CPU cores. By setting the value for this option you define the new default. Available starting with version 2.7.0. + +## backup.numParallelFiles + +*Type*: int
+*Default*: 1
+*Storage*: Filesystem only
+*Backup type:* Physical only + +The number of files to copy in parallel during a physical backup +to filesystem or NFS storage. + +The default value of `1` copies files sequentially. If parameter is not specified, files will be uploaded/downloaded sequentially. + + + + + + From e022790a504da4a3327c2374eb05793fc81f8e59 Mon Sep 17 00:00:00 2001 From: rasika-chivate <95711051+rasika-chivate@users.noreply.github.com> Date: Thu, 11 Jun 2026 12:03:05 +0530 Subject: [PATCH 02/31] Added restore flag --- docs/reference/restore-options.md | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/docs/reference/restore-options.md b/docs/reference/restore-options.md index 6747acbe..47eb75ca 100644 --- a/docs/reference/restore-options.md +++ b/docs/reference/restore-options.md @@ -99,4 +99,21 @@ This is useful when you want to: - Prevent restore operations from waiting indefinitely - Enforce time limits in automated workflows -- Fail fast if the balancer cannot be stopped \ No newline at end of file +- Fail fast if the balancer cannot be stopped + + +## restore.numParallelFiles + +*Type*: int
+*Default*: 1
+*Storage*: Filesystem only
+*Restore type:* Physical only + +The number of files to copy in parallel during a physical restore +from filesystem or NFS storage. + +The default value of `1` copies files sequentially. If parameter is not specified, files will be uploaded/downloaded sequentially. + + + + From b36ea8862a54632eec4530120aadcc7115813041 Mon Sep 17 00:00:00 2001 From: rasika-chivate <95711051+rasika-chivate@users.noreply.github.com> Date: Thu, 11 Jun 2026 12:14:16 +0530 Subject: [PATCH 03/31] Update backup-physical.md --- docs/usage/backup-physical.md | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/docs/usage/backup-physical.md b/docs/usage/backup-physical.md index 62f21db5..2df08179 100644 --- a/docs/usage/backup-physical.md +++ b/docs/usage/backup-physical.md @@ -18,6 +18,30 @@ pbm backup --type=physical Starting with [2.4.0](../release-notes/2.4.0.md), PBM doesn't stop [point-in-time recovery oplog slicing](../features/point-in-time-recovery.md#oplog-slicing), if it's enabled, but runs it in parallel. This ensures [point-in-time recovery](pitr-tutorial.md) to any timestamp if it takes too long (e.g. hours) to make a backup snapshot. +## Improve backup performance on filesystem storage + +For physical backups stored on a filesystem, you can control how many files PBM processes in parallel during backup and restore operations. Increasing parallelism can improve performance by allowing multiple files to be transferred or copied simultaneously. + + +To copy files in parallel, set `backup.numParallelFiles` in the +PBM configuration: + +```yaml +backup: + numParallelFiles: 4 +``` + +Or pass `--num-parallel-files` + +```sh +pbm backup --num-parallel-files=4 +``` + +!!! note + Parallel file copy applies to **physical backups to filesystem + or NFS storage only**. It has no effect on logical backups or + on S3-compatible storage. + ## Next steps [List backups](../usage/list-backup.md){.md-button} From c39a56defb1ba7ca0077fbded94e43402d8cbe35 Mon Sep 17 00:00:00 2001 From: rasika-chivate <95711051+rasika-chivate@users.noreply.github.com> Date: Thu, 11 Jun 2026 12:16:20 +0530 Subject: [PATCH 04/31] Update restore-physical.md --- docs/usage/restore-physical.md | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/docs/usage/restore-physical.md b/docs/usage/restore-physical.md index 9b8c7569..188c1b2d 100644 --- a/docs/usage/restore-physical.md +++ b/docs/usage/restore-physical.md @@ -151,6 +151,28 @@ restore: * `maxDownloadBufferMb` - the maximum size of memory buffer to store the downloaded data chunks for decompression and ordering. It is calculated as `numDownloadWorkers * downloadChunkMb * 16` * `downloadChunkMb` is the size of the data chunk to download (by default, 32 MB) +## Improve restore performance on filesystem storage + +For physical restores from filesystem storage, you can control how many files PBM copies in parallel during the restore operation. Increasing the number of parallel file copies can reduce restore time by allowing multiple files to be processed simultaneously, depending on the available system and storage resources. + +To copy files in parallel, set `restore.numParallelFiles` in the +PBM configuration: + +```yaml +restore: + numParallelFiles: 4 +``` + +Or pass `--num-parallel-files`: + +```sh +pbm restore --num-parallel-files=4 +``` + +!!! note + Parallel file copy applies to **physical restores from + filesystem or NFS storage only**. It has no effect on logical + restores or on S3-compatible storage. ## Next steps From 99db9e3bb8fe3ebd2bbfb1153abd4ac0a8f5600b Mon Sep 17 00:00:00 2001 From: Rasika Chivate <95711051+rasika-chivate@users.noreply.github.com> Date: Thu, 11 Jun 2026 12:21:52 +0530 Subject: [PATCH 05/31] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- docs/usage/restore-physical.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/docs/usage/restore-physical.md b/docs/usage/restore-physical.md index 188c1b2d..0a2dc94b 100644 --- a/docs/usage/restore-physical.md +++ b/docs/usage/restore-physical.md @@ -155,8 +155,7 @@ restore: For physical restores from filesystem storage, you can control how many files PBM copies in parallel during the restore operation. Increasing the number of parallel file copies can reduce restore time by allowing multiple files to be processed simultaneously, depending on the available system and storage resources. -To copy files in parallel, set `restore.numParallelFiles` in the -PBM configuration: +To copy files in parallel, set `restore.numParallelFiles` in the PBM configuration: ```yaml restore: From c21aad3223ce5167994f543f89dd01d71fcfccf4 Mon Sep 17 00:00:00 2001 From: Rasika Chivate <95711051+rasika-chivate@users.noreply.github.com> Date: Thu, 11 Jun 2026 12:22:07 +0530 Subject: [PATCH 06/31] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- docs/usage/restore-physical.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/docs/usage/restore-physical.md b/docs/usage/restore-physical.md index 0a2dc94b..ee9464c5 100644 --- a/docs/usage/restore-physical.md +++ b/docs/usage/restore-physical.md @@ -169,9 +169,7 @@ pbm restore --num-parallel-files=4 ``` !!! note - Parallel file copy applies to **physical restores from - filesystem or NFS storage only**. It has no effect on logical - restores or on S3-compatible storage. + Parallel file copy applies to **physical restores from filesystem or NFS storage only**. It has no effect on logical restores or on S3-compatible storage. ## Next steps From 7ae0a395f6ee2a6153eb7a9e3ce2c0caeb642c21 Mon Sep 17 00:00:00 2001 From: Rasika Chivate <95711051+rasika-chivate@users.noreply.github.com> Date: Thu, 11 Jun 2026 12:22:51 +0530 Subject: [PATCH 07/31] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- docs/usage/backup-physical.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/usage/backup-physical.md b/docs/usage/backup-physical.md index 2df08179..8d028d0a 100644 --- a/docs/usage/backup-physical.md +++ b/docs/usage/backup-physical.md @@ -20,7 +20,7 @@ Starting with [2.4.0](../release-notes/2.4.0.md), PBM doesn't stop [point-in-tim ## Improve backup performance on filesystem storage -For physical backups stored on a filesystem, you can control how many files PBM processes in parallel during backup and restore operations. Increasing parallelism can improve performance by allowing multiple files to be transferred or copied simultaneously. +For physical backups stored on a filesystem, you can control how many files PBM processes in parallel during the backup operation. Increasing parallelism can improve performance by allowing multiple files to be copied simultaneously. To copy files in parallel, set `backup.numParallelFiles` in the From aad2bf0f641f1f6d7b2de09970ca8159925243e6 Mon Sep 17 00:00:00 2001 From: Rasika Chivate <95711051+rasika-chivate@users.noreply.github.com> Date: Thu, 11 Jun 2026 12:23:18 +0530 Subject: [PATCH 08/31] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- docs/usage/backup-physical.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/docs/usage/backup-physical.md b/docs/usage/backup-physical.md index 8d028d0a..8eedae01 100644 --- a/docs/usage/backup-physical.md +++ b/docs/usage/backup-physical.md @@ -23,8 +23,7 @@ Starting with [2.4.0](../release-notes/2.4.0.md), PBM doesn't stop [point-in-tim For physical backups stored on a filesystem, you can control how many files PBM processes in parallel during the backup operation. Increasing parallelism can improve performance by allowing multiple files to be copied simultaneously. -To copy files in parallel, set `backup.numParallelFiles` in the -PBM configuration: +To copy files in parallel, set `backup.numParallelFiles` in the PBM configuration: ```yaml backup: From 132ad2270ffa1b5fa78229c696ce5b36cd764a10 Mon Sep 17 00:00:00 2001 From: Rasika Chivate <95711051+rasika-chivate@users.noreply.github.com> Date: Thu, 11 Jun 2026 12:23:30 +0530 Subject: [PATCH 09/31] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- docs/usage/backup-physical.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/usage/backup-physical.md b/docs/usage/backup-physical.md index 8eedae01..4d409dfe 100644 --- a/docs/usage/backup-physical.md +++ b/docs/usage/backup-physical.md @@ -30,7 +30,7 @@ backup: numParallelFiles: 4 ``` -Or pass `--num-parallel-files` +Or pass `--num-parallel-files`: ```sh pbm backup --num-parallel-files=4 From f6fbad77a85ad83cf036c30f434607b656f973e3 Mon Sep 17 00:00:00 2001 From: Rasika Chivate <95711051+rasika-chivate@users.noreply.github.com> Date: Thu, 11 Jun 2026 12:23:42 +0530 Subject: [PATCH 10/31] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- docs/usage/backup-physical.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/docs/usage/backup-physical.md b/docs/usage/backup-physical.md index 4d409dfe..335d3d6a 100644 --- a/docs/usage/backup-physical.md +++ b/docs/usage/backup-physical.md @@ -37,9 +37,7 @@ pbm backup --num-parallel-files=4 ``` !!! note - Parallel file copy applies to **physical backups to filesystem - or NFS storage only**. It has no effect on logical backups or - on S3-compatible storage. + Parallel file copy applies to **physical backups to filesystem or NFS storage only**. It has no effect on logical backups or on S3-compatible storage. ## Next steps From 4181d3c57d5537e58a929ac2ca036d2ddc8cc0a2 Mon Sep 17 00:00:00 2001 From: Rasika Chivate <95711051+rasika-chivate@users.noreply.github.com> Date: Thu, 11 Jun 2026 12:23:57 +0530 Subject: [PATCH 11/31] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- docs/reference/restore-options.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/restore-options.md b/docs/reference/restore-options.md index 47eb75ca..12332dae 100644 --- a/docs/reference/restore-options.md +++ b/docs/reference/restore-options.md @@ -102,7 +102,7 @@ This is useful when you want to: - Fail fast if the balancer cannot be stopped -## restore.numParallelFiles +### restore.numParallelFiles *Type*: int
*Default*: 1
From 4b3fe64f5543c7c3f451e2994c1157a92be6a76f Mon Sep 17 00:00:00 2001 From: Rasika Chivate <95711051+rasika-chivate@users.noreply.github.com> Date: Thu, 11 Jun 2026 12:24:19 +0530 Subject: [PATCH 12/31] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- docs/reference/restore-options.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/docs/reference/restore-options.md b/docs/reference/restore-options.md index 12332dae..a58b60d9 100644 --- a/docs/reference/restore-options.md +++ b/docs/reference/restore-options.md @@ -109,10 +109,9 @@ This is useful when you want to: *Storage*: Filesystem only
*Restore type:* Physical only -The number of files to copy in parallel during a physical restore -from filesystem or NFS storage. +The number of files to copy in parallel during a physical restore from filesystem or NFS storage. -The default value of `1` copies files sequentially. If parameter is not specified, files will be uploaded/downloaded sequentially. +The default value is `1`, which copies files sequentially. From 53ab1e158437bc01b20eceb6159deaffcfc0bea5 Mon Sep 17 00:00:00 2001 From: Rasika Chivate <95711051+rasika-chivate@users.noreply.github.com> Date: Thu, 11 Jun 2026 12:24:28 +0530 Subject: [PATCH 13/31] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- docs/reference/backup-options.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/docs/reference/backup-options.md b/docs/reference/backup-options.md index 8fa1f151..114ca23a 100644 --- a/docs/reference/backup-options.md +++ b/docs/reference/backup-options.md @@ -129,10 +129,9 @@ Available starting with version 2.7.0. *Storage*: Filesystem only
*Backup type:* Physical only -The number of files to copy in parallel during a physical backup -to filesystem or NFS storage. +The number of files to copy in parallel during a physical backup to filesystem or NFS storage. -The default value of `1` copies files sequentially. If parameter is not specified, files will be uploaded/downloaded sequentially. +The default value is `1`, which copies files sequentially. From ffc30b4e1a48642fb1a0cc08eb8720ef3d17cfdf Mon Sep 17 00:00:00 2001 From: Rasika Chivate <95711051+rasika-chivate@users.noreply.github.com> Date: Thu, 11 Jun 2026 12:32:09 +0530 Subject: [PATCH 14/31] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- docs/reference/restore-options.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/restore-options.md b/docs/reference/restore-options.md index a58b60d9..a3a7d994 100644 --- a/docs/reference/restore-options.md +++ b/docs/reference/restore-options.md @@ -106,7 +106,7 @@ This is useful when you want to: *Type*: int
*Default*: 1
-*Storage*: Filesystem only
+*Storage*: Filesystem / NFS only
*Restore type:* Physical only The number of files to copy in parallel during a physical restore from filesystem or NFS storage. From 303c5a3a33868a80a458a48ad8664b56cca3fe0f Mon Sep 17 00:00:00 2001 From: Rasika Chivate <95711051+rasika-chivate@users.noreply.github.com> Date: Thu, 11 Jun 2026 12:32:19 +0530 Subject: [PATCH 15/31] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- docs/reference/backup-options.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/backup-options.md b/docs/reference/backup-options.md index 114ca23a..baed0c76 100644 --- a/docs/reference/backup-options.md +++ b/docs/reference/backup-options.md @@ -126,7 +126,7 @@ Available starting with version 2.7.0. *Type*: int
*Default*: 1
-*Storage*: Filesystem only
+*Storage*: Filesystem / NFS only
*Backup type:* Physical only The number of files to copy in parallel during a physical backup to filesystem or NFS storage. From 94232caf9c0d6edcbd102144b6331d9a481f3e28 Mon Sep 17 00:00:00 2001 From: rasika-chivate <95711051+rasika-chivate@users.noreply.github.com> Date: Thu, 11 Jun 2026 12:43:05 +0530 Subject: [PATCH 16/31] self review --- docs/usage/backup-physical.md | 3 +-- docs/usage/restore-physical.md | 6 ++++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/docs/usage/backup-physical.md b/docs/usage/backup-physical.md index 335d3d6a..d38f8c1a 100644 --- a/docs/usage/backup-physical.md +++ b/docs/usage/backup-physical.md @@ -18,11 +18,10 @@ pbm backup --type=physical Starting with [2.4.0](../release-notes/2.4.0.md), PBM doesn't stop [point-in-time recovery oplog slicing](../features/point-in-time-recovery.md#oplog-slicing), if it's enabled, but runs it in parallel. This ensures [point-in-time recovery](pitr-tutorial.md) to any timestamp if it takes too long (e.g. hours) to make a backup snapshot. -## Improve backup performance on filesystem storage +## Parallel file copy for filesystem storage For physical backups stored on a filesystem, you can control how many files PBM processes in parallel during the backup operation. Increasing parallelism can improve performance by allowing multiple files to be copied simultaneously. - To copy files in parallel, set `backup.numParallelFiles` in the PBM configuration: ```yaml diff --git a/docs/usage/restore-physical.md b/docs/usage/restore-physical.md index ee9464c5..d92d1647 100644 --- a/docs/usage/restore-physical.md +++ b/docs/usage/restore-physical.md @@ -151,9 +151,11 @@ restore: * `maxDownloadBufferMb` - the maximum size of memory buffer to store the downloaded data chunks for decompression and ordering. It is calculated as `numDownloadWorkers * downloadChunkMb * 16` * `downloadChunkMb` is the size of the data chunk to download (by default, 32 MB) -## Improve restore performance on filesystem storage +## Parallel file copy for filesystem storage -For physical restores from filesystem storage, you can control how many files PBM copies in parallel during the restore operation. Increasing the number of parallel file copies can reduce restore time by allowing multiple files to be processed simultaneously, depending on the available system and storage resources. +By default, PBM copies backup files sequentially during a physical +restore from filesystem or NFS storage. On fast NFS mounts, this +limits restore throughput regardless of available network bandwidth. To copy files in parallel, set `restore.numParallelFiles` in the PBM configuration: From 5ce1aa2f184bf0bce987eb1ff4948d1e6b1fbaa1 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 11 Jun 2026 07:17:35 +0000 Subject: [PATCH 17/31] Remove extra trailing blank lines in backup options docs --- docs/reference/backup-options.md | 6 ------ 1 file changed, 6 deletions(-) diff --git a/docs/reference/backup-options.md b/docs/reference/backup-options.md index baed0c76..8950986f 100644 --- a/docs/reference/backup-options.md +++ b/docs/reference/backup-options.md @@ -132,9 +132,3 @@ Available starting with version 2.7.0. The number of files to copy in parallel during a physical backup to filesystem or NFS storage. The default value is `1`, which copies files sequentially. - - - - - - From b73439fc4dd7cb542523ae165cf93cf6b2f43733 Mon Sep 17 00:00:00 2001 From: Rasika Chivate <95711051+rasika-chivate@users.noreply.github.com> Date: Thu, 11 Jun 2026 12:50:16 +0530 Subject: [PATCH 18/31] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- docs/usage/backup-physical.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/usage/backup-physical.md b/docs/usage/backup-physical.md index d38f8c1a..cd078f9f 100644 --- a/docs/usage/backup-physical.md +++ b/docs/usage/backup-physical.md @@ -18,9 +18,9 @@ pbm backup --type=physical Starting with [2.4.0](../release-notes/2.4.0.md), PBM doesn't stop [point-in-time recovery oplog slicing](../features/point-in-time-recovery.md#oplog-slicing), if it's enabled, but runs it in parallel. This ensures [point-in-time recovery](pitr-tutorial.md) to any timestamp if it takes too long (e.g. hours) to make a backup snapshot. -## Parallel file copy for filesystem storage +## Parallel file copy for filesystem or NFS storage -For physical backups stored on a filesystem, you can control how many files PBM processes in parallel during the backup operation. Increasing parallelism can improve performance by allowing multiple files to be copied simultaneously. +For physical backups stored on a filesystem or NFS mount, you can control how many files PBM processes in parallel during the backup operation. Increasing parallelism can improve performance by allowing multiple files to be copied simultaneously. To copy files in parallel, set `backup.numParallelFiles` in the PBM configuration: From fdaa87de3cc5de6cb2e01295d2dad3cef573608c Mon Sep 17 00:00:00 2001 From: Rasika Chivate <95711051+rasika-chivate@users.noreply.github.com> Date: Thu, 11 Jun 2026 12:50:28 +0530 Subject: [PATCH 19/31] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- docs/usage/restore-physical.md | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/docs/usage/restore-physical.md b/docs/usage/restore-physical.md index d92d1647..0b6fa874 100644 --- a/docs/usage/restore-physical.md +++ b/docs/usage/restore-physical.md @@ -151,11 +151,9 @@ restore: * `maxDownloadBufferMb` - the maximum size of memory buffer to store the downloaded data chunks for decompression and ordering. It is calculated as `numDownloadWorkers * downloadChunkMb * 16` * `downloadChunkMb` is the size of the data chunk to download (by default, 32 MB) -## Parallel file copy for filesystem storage +## Parallel file copy for filesystem or NFS storage -By default, PBM copies backup files sequentially during a physical -restore from filesystem or NFS storage. On fast NFS mounts, this -limits restore throughput regardless of available network bandwidth. +By default, PBM copies backup files sequentially during a physical restore from filesystem or NFS storage. On fast NFS mounts, this limits restore throughput regardless of available network bandwidth. To copy files in parallel, set `restore.numParallelFiles` in the PBM configuration: From 4f9fc295a95fd9a0bb174b1e3d5361ff3b6fbbab Mon Sep 17 00:00:00 2001 From: Rasika Chivate <95711051+rasika-chivate@users.noreply.github.com> Date: Thu, 11 Jun 2026 13:05:34 +0530 Subject: [PATCH 20/31] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- docs/usage/restore-physical.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/usage/restore-physical.md b/docs/usage/restore-physical.md index 0b6fa874..534cad7b 100644 --- a/docs/usage/restore-physical.md +++ b/docs/usage/restore-physical.md @@ -151,7 +151,7 @@ restore: * `maxDownloadBufferMb` - the maximum size of memory buffer to store the downloaded data chunks for decompression and ordering. It is calculated as `numDownloadWorkers * downloadChunkMb * 16` * `downloadChunkMb` is the size of the data chunk to download (by default, 32 MB) -## Parallel file copy for filesystem or NFS storage +### Parallel file copy for filesystem or NFS storage By default, PBM copies backup files sequentially during a physical restore from filesystem or NFS storage. On fast NFS mounts, this limits restore throughput regardless of available network bandwidth. From 66f72da34717d2ff57b3c81a57713661ec27d5f4 Mon Sep 17 00:00:00 2001 From: Rasika Chivate <95711051+rasika-chivate@users.noreply.github.com> Date: Thu, 11 Jun 2026 13:08:15 +0530 Subject: [PATCH 21/31] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- docs/usage/backup-physical.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/usage/backup-physical.md b/docs/usage/backup-physical.md index cd078f9f..9c06a958 100644 --- a/docs/usage/backup-physical.md +++ b/docs/usage/backup-physical.md @@ -32,7 +32,7 @@ backup: Or pass `--num-parallel-files`: ```sh -pbm backup --num-parallel-files=4 +pbm backup --type=physical --num-parallel-files=4 ``` !!! note From b2d07f708834a7fce8c7ceaf35b347efa2488943 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 11 Jun 2026 07:38:22 +0000 Subject: [PATCH 22/31] Add numParallelFiles to backup YAML example --- docs/reference/backup-options.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/reference/backup-options.md b/docs/reference/backup-options.md index 8950986f..c05696a3 100644 --- a/docs/reference/backup-options.md +++ b/docs/reference/backup-options.md @@ -13,6 +13,7 @@ backup: startingStatus: 60 oplogSpanMin: numParallelCollections: + numParallelFiles: ``` ## priority From d08cf9ab776944f81f863b219f29c477af286860 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 11 Jun 2026 07:38:50 +0000 Subject: [PATCH 23/31] Remove trailing blank lines in restore options doc --- docs/reference/restore-options.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/docs/reference/restore-options.md b/docs/reference/restore-options.md index a3a7d994..f3c1e071 100644 --- a/docs/reference/restore-options.md +++ b/docs/reference/restore-options.md @@ -112,7 +112,3 @@ This is useful when you want to: The number of files to copy in parallel during a physical restore from filesystem or NFS storage. The default value is `1`, which copies files sequentially. - - - - From f5c0f06c60fc42ef6001ae9e378d8d26696461b7 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 11 Jun 2026 07:40:07 +0000 Subject: [PATCH 24/31] Add restore numParallelFiles to YAML example --- docs/reference/restore-options.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/reference/restore-options.md b/docs/reference/restore-options.md index f3c1e071..02490c64 100644 --- a/docs/reference/restore-options.md +++ b/docs/reference/restore-options.md @@ -6,6 +6,7 @@ restore: numInsertionWorkers: numParallelCollections: numDownloadWorkers: + numParallelFiles: maxDownloadBufferMb: downloadChunkMb: mongodLocation: From aef469ce389be587305f31114f09e8d78fcdf02c Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 11 Jun 2026 07:40:49 +0000 Subject: [PATCH 25/31] Add restore numParallelFiles to YAML example --- .cache/plugin/git-committers/page-authors.json | 1 + 1 file changed, 1 insertion(+) create mode 100644 .cache/plugin/git-committers/page-authors.json diff --git a/.cache/plugin/git-committers/page-authors.json b/.cache/plugin/git-committers/page-authors.json new file mode 100644 index 00000000..de035433 --- /dev/null +++ b/.cache/plugin/git-committers/page-authors.json @@ -0,0 +1 @@ +{"cache_date": "2026-06-11", "page_authors": {"docs/index.md": {"last_commit_date": "2025-02-20", "authors": []}, "docs/404.md": {"last_commit_date": "2023-12-08", "authors": []}, "docs/CODE_OF_CONDUCT.md": {"last_commit_date": "2026-02-09", "authors": []}, "docs/about-docs.md": {"last_commit_date": "2025-02-19", "authors": []}, "docs/copyright.md": {"last_commit_date": "2024-12-09", "authors": []}, "docs/get-help.md": {"last_commit_date": "2025-02-20", "authors": []}, "docs/installation.md": {"last_commit_date": "2024-08-07", "authors": []}, "docs/intro.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/pmm.md": {"last_commit_date": "2025-02-12", "authors": []}, "docs/release-notes.md": {"last_commit_date": "2026-04-28", "authors": []}, "docs/system-requirements.md": {"last_commit_date": "2025-01-23", "authors": []}, "docs/trademark-policy.md": {"last_commit_date": "2023-12-08", "authors": []}, "docs/details/architecture.md": {"last_commit_date": "2024-09-10", "authors": []}, "docs/details/authentication.md": {"last_commit_date": "2026-03-05", "authors": []}, "docs/details/azure.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/details/cli.md": {"last_commit_date": "2024-03-04", "authors": []}, "docs/details/control-collections.md": {"last_commit_date": "2024-05-16", "authors": []}, "docs/details/deployments.md": {"last_commit_date": "2024-05-16", "authors": []}, "docs/details/endpoint-map.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/details/filesystem-storage.md": {"last_commit_date": "2025-07-16", "authors": []}, "docs/details/gcs.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/details/minio.md": {"last_commit_date": "2026-03-16", "authors": []}, "docs/details/oss.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/details/pbm-agent.md": {"last_commit_date": "2024-09-10", "authors": []}, "docs/details/s3-storage.md": {"last_commit_date": "2026-04-08", "authors": []}, "docs/details/storage-configuration.md": {"last_commit_date": "2026-03-16", "authors": []}, "docs/details/versions.md": {"last_commit_date": "2025-12-03", "authors": []}, "docs/details/workload-identity-auth.md": {"last_commit_date": "2026-02-24", "authors": []}, "docs/features/backup-sharding.md": {"last_commit_date": "2025-02-20", "authors": []}, "docs/features/backup-types.md": {"last_commit_date": "2024-11-19", "authors": []}, "docs/features/comparison.md": {"last_commit_date": "2025-05-23", "authors": []}, "docs/features/incremental-backup.md": {"last_commit_date": "2025-02-20", "authors": []}, "docs/features/known-limitations.md": {"last_commit_date": "2026-04-29", "authors": []}, "docs/features/logical.md": {"last_commit_date": "2024-09-02", "authors": []}, "docs/features/multi-storage.md": {"last_commit_date": "2026-04-29", "authors": []}, "docs/features/physical.md": {"last_commit_date": "2026-04-29", "authors": []}, "docs/features/point-in-time-recovery.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/features/restore-new-env.md": {"last_commit_date": "2025-09-23", "authors": []}, "docs/features/restore-remapping.md": {"last_commit_date": "2026-04-28", "authors": []}, "docs/features/selective-backup.md": {"last_commit_date": "2026-02-24", "authors": []}, "docs/features/snapshots.md": {"last_commit_date": "2026-03-26", "authors": []}, "docs/features/split-merge-backup.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/install/backup-storage.md": {"last_commit_date": "2026-03-26", "authors": []}, "docs/install/configure-authentication.md": {"last_commit_date": "2026-06-10", "authors": []}, "docs/install/docker.md": {"last_commit_date": "2026-06-10", "authors": []}, "docs/install/initial-setup.md": {"last_commit_date": "2024-09-10", "authors": []}, "docs/install/repos.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/install/secure-credentials-systemd.md": {"last_commit_date": "2026-04-01", "authors": []}, "docs/install/source.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/install/start-pbm-agent.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/install/tarball.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/manage/automate-s3-access.md": {"last_commit_date": "2025-11-13", "authors": []}, "docs/manage/change-nodes.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/manage/configure-remotely.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/manage/logpath.md": {"last_commit_date": "2025-12-24", "authors": []}, "docs/manage/overview.md": {"last_commit_date": "2023-12-08", "authors": []}, "docs/manage/start-agent-with-config.md": {"last_commit_date": "2025-12-24", "authors": []}, "docs/manage/uninstalling.md": {"last_commit_date": "2023-03-29", "authors": []}, "docs/manage/upgrading.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/reference/backup-options.md": {"last_commit_date": "2026-06-11", "authors": []}, "docs/reference/config.md": {"last_commit_date": "2026-04-17", "authors": []}, "docs/reference/configuration-options.md": {"last_commit_date": "2026-04-08", "authors": []}, "docs/reference/glossary.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/reference/logging-options.md": {"last_commit_date": "2025-02-19", "authors": []}, "docs/reference/pbm-agent-config-options.md": {"last_commit_date": "2025-12-24", "authors": []}, "docs/reference/pbm-commands.md": {"last_commit_date": "2026-04-28", "authors": []}, "docs/reference/pitr-options.md": {"last_commit_date": "2025-12-01", "authors": []}, "docs/reference/restore-options.md": {"last_commit_date": "2026-06-11", "authors": []}, "docs/release-notes/0.5.0.md": {"last_commit_date": "2023-01-19", "authors": []}, "docs/release-notes/1.0.0.md": {"last_commit_date": "2024-12-06", "authors": []}, "docs/release-notes/1.1.0.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.1.1.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.1.3.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.2.0.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.2.1.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.3.0.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.3.1.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.3.2.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.3.3.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.3.4.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.4.0.md": {"last_commit_date": "2023-05-09", "authors": []}, "docs/release-notes/1.4.1.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.5.0.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.6.0.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.6.1.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.7.0.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.8.0.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.8.1.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/2.0.0.md": {"last_commit_date": "2025-02-20", "authors": []}, "docs/release-notes/2.0.1.md": {"last_commit_date": "2025-05-23", "authors": []}, "docs/release-notes/2.0.2.md": {"last_commit_date": "2022-10-27", "authors": []}, "docs/release-notes/2.0.3.md": {"last_commit_date": "2023-03-29", "authors": []}, "docs/release-notes/2.0.4.md": {"last_commit_date": "2025-02-20", "authors": []}, "docs/release-notes/2.0.5.md": {"last_commit_date": "2023-03-29", "authors": []}, "docs/release-notes/2.1.0.md": {"last_commit_date": "2025-03-12", "authors": []}, "docs/release-notes/2.10.0.md": {"last_commit_date": "2025-07-02", "authors": []}, "docs/release-notes/2.11.0.md": {"last_commit_date": "2025-09-25", "authors": []}, "docs/release-notes/2.12.0.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/release-notes/2.13.0.md": {"last_commit_date": "2026-03-02", "authors": []}, "docs/release-notes/2.14.0.md": {"last_commit_date": "2026-04-29", "authors": []}, "docs/release-notes/2.2.0.md": {"last_commit_date": "2025-02-20", "authors": []}, "docs/release-notes/2.2.1.md": {"last_commit_date": "2023-07-27", "authors": []}, "docs/release-notes/2.3.0.md": {"last_commit_date": "2023-09-25", "authors": []}, "docs/release-notes/2.3.1.md": {"last_commit_date": "2023-12-08", "authors": []}, "docs/release-notes/2.4.0.md": {"last_commit_date": "2024-03-21", "authors": []}, "docs/release-notes/2.4.1.md": {"last_commit_date": "2024-03-26", "authors": []}, "docs/release-notes/2.5.0.md": {"last_commit_date": "2024-05-16", "authors": []}, "docs/release-notes/2.6.0.md": {"last_commit_date": "2025-04-09", "authors": []}, "docs/release-notes/2.7.0.md": {"last_commit_date": "2024-10-09", "authors": []}, "docs/release-notes/2.8.0.md": {"last_commit_date": "2025-06-26", "authors": []}, "docs/release-notes/2.9.0.md": {"last_commit_date": "2025-02-19", "authors": []}, "docs/release-notes/2.9.1.md": {"last_commit_date": "2025-03-27", "authors": []}, "docs/troubleshoot/index.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/troubleshoot/faq.md": {"last_commit_date": "2026-01-02", "authors": []}, "docs/troubleshoot/pbm-pmm.md": {"last_commit_date": "2026-06-10", "authors": []}, "docs/troubleshoot/pbm-report.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/troubleshoot/restore-partial.md": {"last_commit_date": "2025-06-26", "authors": []}, "docs/troubleshoot/status.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/troubleshoot/troubleshooting.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/usage/backup-external.md": {"last_commit_date": "2026-04-16", "authors": []}, "docs/usage/backup-incremental.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/usage/backup-physical.md": {"last_commit_date": "2026-06-11", "authors": []}, "docs/usage/backup-priority.md": {"last_commit_date": "2025-08-19", "authors": []}, "docs/usage/backup-selective.md": {"last_commit_date": "2026-02-24", "authors": []}, "docs/usage/cancel-backup.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/usage/compression.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/usage/delete-backup.md": {"last_commit_date": "2026-04-28", "authors": []}, "docs/usage/describe-backup.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/usage/list-backup.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/usage/logs.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/usage/oplog-replay.md": {"last_commit_date": "2025-12-04", "authors": []}, "docs/usage/pitr-physical.md": {"last_commit_date": "2026-04-28", "authors": []}, "docs/usage/pitr-selective.md": {"last_commit_date": "2026-04-28", "authors": []}, "docs/usage/pitr-tutorial.md": {"last_commit_date": "2026-04-28", "authors": []}, "docs/usage/restore-external-agent-restart.md": {"last_commit_date": "2026-04-28", "authors": []}, "docs/usage/restore-external.md": {"last_commit_date": "2026-04-28", "authors": []}, "docs/usage/restore-incremental.md": {"last_commit_date": "2026-04-28", "authors": []}, "docs/usage/restore-physical.md": {"last_commit_date": "2026-06-11", "authors": []}, "docs/usage/restore-progress.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/usage/restore-selective.md": {"last_commit_date": "2026-04-28", "authors": []}, "docs/usage/restore.md": {"last_commit_date": "2026-04-28", "authors": []}, "docs/usage/schedule-backup.md": {"last_commit_date": "2025-12-29", "authors": []}, "docs/usage/start-backup.md": {"last_commit_date": "2025-11-04", "authors": []}}} \ No newline at end of file From 2973877323db96196d9abbf097ba914e4e98200a Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 11 Jun 2026 07:55:34 +0000 Subject: [PATCH 26/31] Remove generated cache artifact and ignore .cache --- .cache/plugin/git-committers/page-authors.json | 1 - .gitignore | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) delete mode 100644 .cache/plugin/git-committers/page-authors.json diff --git a/.cache/plugin/git-committers/page-authors.json b/.cache/plugin/git-committers/page-authors.json deleted file mode 100644 index de035433..00000000 --- a/.cache/plugin/git-committers/page-authors.json +++ /dev/null @@ -1 +0,0 @@ -{"cache_date": "2026-06-11", "page_authors": {"docs/index.md": {"last_commit_date": "2025-02-20", "authors": []}, "docs/404.md": {"last_commit_date": "2023-12-08", "authors": []}, "docs/CODE_OF_CONDUCT.md": {"last_commit_date": "2026-02-09", "authors": []}, "docs/about-docs.md": {"last_commit_date": "2025-02-19", "authors": []}, "docs/copyright.md": {"last_commit_date": "2024-12-09", "authors": []}, "docs/get-help.md": {"last_commit_date": "2025-02-20", "authors": []}, "docs/installation.md": {"last_commit_date": "2024-08-07", "authors": []}, "docs/intro.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/pmm.md": {"last_commit_date": "2025-02-12", "authors": []}, "docs/release-notes.md": {"last_commit_date": "2026-04-28", "authors": []}, "docs/system-requirements.md": {"last_commit_date": "2025-01-23", "authors": []}, "docs/trademark-policy.md": {"last_commit_date": "2023-12-08", "authors": []}, "docs/details/architecture.md": {"last_commit_date": "2024-09-10", "authors": []}, "docs/details/authentication.md": {"last_commit_date": "2026-03-05", "authors": []}, "docs/details/azure.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/details/cli.md": {"last_commit_date": "2024-03-04", "authors": []}, "docs/details/control-collections.md": {"last_commit_date": "2024-05-16", "authors": []}, "docs/details/deployments.md": {"last_commit_date": "2024-05-16", "authors": []}, "docs/details/endpoint-map.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/details/filesystem-storage.md": {"last_commit_date": "2025-07-16", "authors": []}, "docs/details/gcs.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/details/minio.md": {"last_commit_date": "2026-03-16", "authors": []}, "docs/details/oss.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/details/pbm-agent.md": {"last_commit_date": "2024-09-10", "authors": []}, "docs/details/s3-storage.md": {"last_commit_date": "2026-04-08", "authors": []}, "docs/details/storage-configuration.md": {"last_commit_date": "2026-03-16", "authors": []}, "docs/details/versions.md": {"last_commit_date": "2025-12-03", "authors": []}, "docs/details/workload-identity-auth.md": {"last_commit_date": "2026-02-24", "authors": []}, "docs/features/backup-sharding.md": {"last_commit_date": "2025-02-20", "authors": []}, "docs/features/backup-types.md": {"last_commit_date": "2024-11-19", "authors": []}, "docs/features/comparison.md": {"last_commit_date": "2025-05-23", "authors": []}, "docs/features/incremental-backup.md": {"last_commit_date": "2025-02-20", "authors": []}, "docs/features/known-limitations.md": {"last_commit_date": "2026-04-29", "authors": []}, "docs/features/logical.md": {"last_commit_date": "2024-09-02", "authors": []}, "docs/features/multi-storage.md": {"last_commit_date": "2026-04-29", "authors": []}, "docs/features/physical.md": {"last_commit_date": "2026-04-29", "authors": []}, "docs/features/point-in-time-recovery.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/features/restore-new-env.md": {"last_commit_date": "2025-09-23", "authors": []}, "docs/features/restore-remapping.md": {"last_commit_date": "2026-04-28", "authors": []}, "docs/features/selective-backup.md": {"last_commit_date": "2026-02-24", "authors": []}, "docs/features/snapshots.md": {"last_commit_date": "2026-03-26", "authors": []}, "docs/features/split-merge-backup.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/install/backup-storage.md": {"last_commit_date": "2026-03-26", "authors": []}, "docs/install/configure-authentication.md": {"last_commit_date": "2026-06-10", "authors": []}, "docs/install/docker.md": {"last_commit_date": "2026-06-10", "authors": []}, "docs/install/initial-setup.md": {"last_commit_date": "2024-09-10", "authors": []}, "docs/install/repos.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/install/secure-credentials-systemd.md": {"last_commit_date": "2026-04-01", "authors": []}, "docs/install/source.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/install/start-pbm-agent.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/install/tarball.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/manage/automate-s3-access.md": {"last_commit_date": "2025-11-13", "authors": []}, "docs/manage/change-nodes.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/manage/configure-remotely.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/manage/logpath.md": {"last_commit_date": "2025-12-24", "authors": []}, "docs/manage/overview.md": {"last_commit_date": "2023-12-08", "authors": []}, "docs/manage/start-agent-with-config.md": {"last_commit_date": "2025-12-24", "authors": []}, "docs/manage/uninstalling.md": {"last_commit_date": "2023-03-29", "authors": []}, "docs/manage/upgrading.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/reference/backup-options.md": {"last_commit_date": "2026-06-11", "authors": []}, "docs/reference/config.md": {"last_commit_date": "2026-04-17", "authors": []}, "docs/reference/configuration-options.md": {"last_commit_date": "2026-04-08", "authors": []}, "docs/reference/glossary.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/reference/logging-options.md": {"last_commit_date": "2025-02-19", "authors": []}, "docs/reference/pbm-agent-config-options.md": {"last_commit_date": "2025-12-24", "authors": []}, "docs/reference/pbm-commands.md": {"last_commit_date": "2026-04-28", "authors": []}, "docs/reference/pitr-options.md": {"last_commit_date": "2025-12-01", "authors": []}, "docs/reference/restore-options.md": {"last_commit_date": "2026-06-11", "authors": []}, "docs/release-notes/0.5.0.md": {"last_commit_date": "2023-01-19", "authors": []}, "docs/release-notes/1.0.0.md": {"last_commit_date": "2024-12-06", "authors": []}, "docs/release-notes/1.1.0.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.1.1.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.1.3.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.2.0.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.2.1.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.3.0.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.3.1.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.3.2.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.3.3.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.3.4.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.4.0.md": {"last_commit_date": "2023-05-09", "authors": []}, "docs/release-notes/1.4.1.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.5.0.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.6.0.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.6.1.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.7.0.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.8.0.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/1.8.1.md": {"last_commit_date": "2022-08-18", "authors": []}, "docs/release-notes/2.0.0.md": {"last_commit_date": "2025-02-20", "authors": []}, "docs/release-notes/2.0.1.md": {"last_commit_date": "2025-05-23", "authors": []}, "docs/release-notes/2.0.2.md": {"last_commit_date": "2022-10-27", "authors": []}, "docs/release-notes/2.0.3.md": {"last_commit_date": "2023-03-29", "authors": []}, "docs/release-notes/2.0.4.md": {"last_commit_date": "2025-02-20", "authors": []}, "docs/release-notes/2.0.5.md": {"last_commit_date": "2023-03-29", "authors": []}, "docs/release-notes/2.1.0.md": {"last_commit_date": "2025-03-12", "authors": []}, "docs/release-notes/2.10.0.md": {"last_commit_date": "2025-07-02", "authors": []}, "docs/release-notes/2.11.0.md": {"last_commit_date": "2025-09-25", "authors": []}, "docs/release-notes/2.12.0.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/release-notes/2.13.0.md": {"last_commit_date": "2026-03-02", "authors": []}, "docs/release-notes/2.14.0.md": {"last_commit_date": "2026-04-29", "authors": []}, "docs/release-notes/2.2.0.md": {"last_commit_date": "2025-02-20", "authors": []}, "docs/release-notes/2.2.1.md": {"last_commit_date": "2023-07-27", "authors": []}, "docs/release-notes/2.3.0.md": {"last_commit_date": "2023-09-25", "authors": []}, "docs/release-notes/2.3.1.md": {"last_commit_date": "2023-12-08", "authors": []}, "docs/release-notes/2.4.0.md": {"last_commit_date": "2024-03-21", "authors": []}, "docs/release-notes/2.4.1.md": {"last_commit_date": "2024-03-26", "authors": []}, "docs/release-notes/2.5.0.md": {"last_commit_date": "2024-05-16", "authors": []}, "docs/release-notes/2.6.0.md": {"last_commit_date": "2025-04-09", "authors": []}, "docs/release-notes/2.7.0.md": {"last_commit_date": "2024-10-09", "authors": []}, "docs/release-notes/2.8.0.md": {"last_commit_date": "2025-06-26", "authors": []}, "docs/release-notes/2.9.0.md": {"last_commit_date": "2025-02-19", "authors": []}, "docs/release-notes/2.9.1.md": {"last_commit_date": "2025-03-27", "authors": []}, "docs/troubleshoot/index.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/troubleshoot/faq.md": {"last_commit_date": "2026-01-02", "authors": []}, "docs/troubleshoot/pbm-pmm.md": {"last_commit_date": "2026-06-10", "authors": []}, "docs/troubleshoot/pbm-report.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/troubleshoot/restore-partial.md": {"last_commit_date": "2025-06-26", "authors": []}, "docs/troubleshoot/status.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/troubleshoot/troubleshooting.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/usage/backup-external.md": {"last_commit_date": "2026-04-16", "authors": []}, "docs/usage/backup-incremental.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/usage/backup-physical.md": {"last_commit_date": "2026-06-11", "authors": []}, "docs/usage/backup-priority.md": {"last_commit_date": "2025-08-19", "authors": []}, "docs/usage/backup-selective.md": {"last_commit_date": "2026-02-24", "authors": []}, "docs/usage/cancel-backup.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/usage/compression.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/usage/delete-backup.md": {"last_commit_date": "2026-04-28", "authors": []}, "docs/usage/describe-backup.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/usage/list-backup.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/usage/logs.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/usage/oplog-replay.md": {"last_commit_date": "2025-12-04", "authors": []}, "docs/usage/pitr-physical.md": {"last_commit_date": "2026-04-28", "authors": []}, "docs/usage/pitr-selective.md": {"last_commit_date": "2026-04-28", "authors": []}, "docs/usage/pitr-tutorial.md": {"last_commit_date": "2026-04-28", "authors": []}, "docs/usage/restore-external-agent-restart.md": {"last_commit_date": "2026-04-28", "authors": []}, "docs/usage/restore-external.md": {"last_commit_date": "2026-04-28", "authors": []}, "docs/usage/restore-incremental.md": {"last_commit_date": "2026-04-28", "authors": []}, "docs/usage/restore-physical.md": {"last_commit_date": "2026-06-11", "authors": []}, "docs/usage/restore-progress.md": {"last_commit_date": "2025-11-04", "authors": []}, "docs/usage/restore-selective.md": {"last_commit_date": "2026-04-28", "authors": []}, "docs/usage/restore.md": {"last_commit_date": "2026-04-28", "authors": []}, "docs/usage/schedule-backup.md": {"last_commit_date": "2025-12-29", "authors": []}, "docs/usage/start-backup.md": {"last_commit_date": "2025-11-04", "authors": []}}} \ No newline at end of file diff --git a/.gitignore b/.gitignore index 4da6fc20..a0962e49 100644 --- a/.gitignore +++ b/.gitignore @@ -9,6 +9,7 @@ venv/ # Local Netlify folder .netlify site +.cache/ styles/ From c43bd8ddf719d48f0ba428c3386d62d5948ffd4e Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 11 Jun 2026 07:55:54 +0000 Subject: [PATCH 27/31] docs: add num-parallel-files to pbm backup flags --- docs/reference/pbm-commands.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/reference/pbm-commands.md b/docs/reference/pbm-commands.md index f1c54b23..2c097877 100644 --- a/docs/reference/pbm-commands.md +++ b/docs/reference/pbm-commands.md @@ -25,6 +25,7 @@ The command accepts the following flags: | `--compression`| Create a backup with compression.
Supported compression methods: `gzip`, `snappy`, `lz4`, `s2`, `pgzip`, `zstd`. Default: `s2`
The `none` value means no compression is done during backup. | | `--compression-level` | Configure the compression level from 0 to 10. The default value depends on the compression method used. | | `--num-parallel-collections`| Sets the number of collections to process in parallel during a specific logical backup. When undefined, `pbm-agent` processes the number of parallel collections defined for the `backup.numParallelCollections` configuration parameter. If that is undefined, the default number of collections to process in parallel is the half of the number of logical CPUs. Available starting with version 2.7.0.| +| `--num-parallel-files`| Sets the number of files to process in parallel during a specific physical backup. When undefined, `pbm-agent` uses the value defined for the `backup.numParallelFiles` configuration parameter. If that is undefined, the default number of files to process in parallel is `1`. | | `-o`, `--out=text` | Shows the output format as either plain text or a JSON object. Supported values: `text`, `json` | | `--wait` | Wait for the backup to finish. The flag blocks the shell session.| | `--wait-time` | The time to wait for PBM to report the status of the command execution. Use this flag together with the `--wait` flag. You can specify the duration in minutes or hours (for example 5m, 1h).

When not set, PBM waits till the command executes.

If it takes longer than the defined waiting time to execute the command, PBM prints the `Operation is in progress. Check pbm status and logs` error message and unblocks the shell session. The `pbm-agent` continues to execute the command enabling you to track its progress via the `pbm status` command. Available starting with version 2.6.0.| From badea9ee94c7ee6600cfa64ca8a24ea8abe0bae4 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 11 Jun 2026 07:55:55 +0000 Subject: [PATCH 28/31] Document --num-parallel-files for pbm restore --- docs/reference/pbm-commands.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/reference/pbm-commands.md b/docs/reference/pbm-commands.md index 2c097877..22b1aede 100644 --- a/docs/reference/pbm-commands.md +++ b/docs/reference/pbm-commands.md @@ -941,6 +941,7 @@ The command accepts the following flags: | `--with-users-and-roles` | Restores users and roles created in custom databases during selective restore. Use this flag with the `--ns` flag. Available starting with version 2.5.0.| | `-c`, `--config` | The path to the `mongod.conf` file | | `--num-parallel-collections`| Sets the number of collections to process in parallel during a specific logical restore. When undefined, `pbm-agent` processes the number of parallel collections defined for the `restore.numParallelCollections` configuration parameter. If that is undefined, the default number of collections is the half of the number of logical CPUs. Available starting with version 2.7.0.| +| `--num-parallel-files` | Sets the number of files to copy in parallel during a specific physical restore. When undefined, PBM uses the value configured for the `restore.numParallelFiles` option. | | `--num-insertion-workers-per-collection`| Specifies the number of insertion workers to run concurrently per collection. Increasing the number for large import may increase the speed of the import. Available starting with version 2.8.0.| | `--ns-from`="database.collection" |Specifies the name of the collection you want to restore under a new name. It indicates the collection present in the backup that you are targeting for restoration. Available starting with version 2.8.0.| | `--ns-to`="database.collection" | Specifies the new name for the collection you are restoring from the original one. Available starting with version 2.8.0.| From 22d720fa7e3da7f2664d39c12460a0801053f998 Mon Sep 17 00:00:00 2001 From: rasika-chivate <95711051+rasika-chivate@users.noreply.github.com> Date: Thu, 11 Jun 2026 14:05:05 +0530 Subject: [PATCH 29/31] Update backup-physical.md --- docs/usage/backup-physical.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/usage/backup-physical.md b/docs/usage/backup-physical.md index 9c06a958..df931e49 100644 --- a/docs/usage/backup-physical.md +++ b/docs/usage/backup-physical.md @@ -18,9 +18,9 @@ pbm backup --type=physical Starting with [2.4.0](../release-notes/2.4.0.md), PBM doesn't stop [point-in-time recovery oplog slicing](../features/point-in-time-recovery.md#oplog-slicing), if it's enabled, but runs it in parallel. This ensures [point-in-time recovery](pitr-tutorial.md) to any timestamp if it takes too long (e.g. hours) to make a backup snapshot. -## Parallel file copy for filesystem or NFS storage +## Parallel file copy for filesystem storage -For physical backups stored on a filesystem or NFS mount, you can control how many files PBM processes in parallel during the backup operation. Increasing parallelism can improve performance by allowing multiple files to be copied simultaneously. +For physical backups stored on a filesystem, you can control how many files PBM processes in parallel during the backup operation. Increasing parallelism can improve performance by allowing multiple files to be copied simultaneously. To copy files in parallel, set `backup.numParallelFiles` in the PBM configuration: @@ -36,7 +36,7 @@ pbm backup --type=physical --num-parallel-files=4 ``` !!! note - Parallel file copy applies to **physical backups to filesystem or NFS storage only**. It has no effect on logical backups or on S3-compatible storage. + Parallel file copy applies to **physical backups or incremental backups to filesystem only**. It has no effect on logical backups or on S3-compatible storage. ## Next steps From 231d400bd12db3694abbfb2dfcb20593fc11a481 Mon Sep 17 00:00:00 2001 From: Rasika Chivate <95711051+rasika-chivate@users.noreply.github.com> Date: Thu, 11 Jun 2026 14:22:36 +0530 Subject: [PATCH 30/31] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- docs/reference/pbm-commands.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/pbm-commands.md b/docs/reference/pbm-commands.md index 22b1aede..3820ab99 100644 --- a/docs/reference/pbm-commands.md +++ b/docs/reference/pbm-commands.md @@ -941,7 +941,7 @@ The command accepts the following flags: | `--with-users-and-roles` | Restores users and roles created in custom databases during selective restore. Use this flag with the `--ns` flag. Available starting with version 2.5.0.| | `-c`, `--config` | The path to the `mongod.conf` file | | `--num-parallel-collections`| Sets the number of collections to process in parallel during a specific logical restore. When undefined, `pbm-agent` processes the number of parallel collections defined for the `restore.numParallelCollections` configuration parameter. If that is undefined, the default number of collections is the half of the number of logical CPUs. Available starting with version 2.7.0.| -| `--num-parallel-files` | Sets the number of files to copy in parallel during a specific physical restore. When undefined, PBM uses the value configured for the `restore.numParallelFiles` option. | +| `--num-parallel-files` | Sets the number of files to copy in parallel during a specific physical restore from filesystem or NFS storage. When undefined, PBM uses the value configured for the `restore.numParallelFiles` option (default: `1`). | | `--num-insertion-workers-per-collection`| Specifies the number of insertion workers to run concurrently per collection. Increasing the number for large import may increase the speed of the import. Available starting with version 2.8.0.| | `--ns-from`="database.collection" |Specifies the name of the collection you want to restore under a new name. It indicates the collection present in the backup that you are targeting for restoration. Available starting with version 2.8.0.| | `--ns-to`="database.collection" | Specifies the new name for the collection you are restoring from the original one. Available starting with version 2.8.0.| From d4d074da903ef70c903cfa2d04039dfc29be9a0b Mon Sep 17 00:00:00 2001 From: rasika-chivate <95711051+rasika-chivate@users.noreply.github.com> Date: Thu, 11 Jun 2026 14:37:56 +0530 Subject: [PATCH 31/31] Update backup-physical.md --- docs/usage/backup-physical.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/usage/backup-physical.md b/docs/usage/backup-physical.md index df931e49..b2cd81dc 100644 --- a/docs/usage/backup-physical.md +++ b/docs/usage/backup-physical.md @@ -36,7 +36,7 @@ pbm backup --type=physical --num-parallel-files=4 ``` !!! note - Parallel file copy applies to **physical backups or incremental backups to filesystem only**. It has no effect on logical backups or on S3-compatible storage. + Parallel file copy applies to **physical backups and incremental physical backups stored on filesystem only**. It has no effect on logical backups or on any S3-compatible storage, regardless of backup type. ## Next steps