diff --git a/doc/xml/release.xml b/doc/xml/release.xml
index 111cefa62..105a60422 100644
--- a/doc/xml/release.xml
+++ b/doc/xml/release.xml
@@ -76,6 +76,14 @@
Improve error when hostname cannot be found in a certificate.
+
+
+
+
+
+
+ Add additional options to backup.manifest for debugging purposes.
+
diff --git a/lib/pgBackRest/Backup/Backup.pm b/lib/pgBackRest/Backup/Backup.pm
index 1c11bdd44..dad38579b 100644
--- a/lib/pgBackRest/Backup/Backup.pm
+++ b/lib/pgBackRest/Backup/Backup.pm
@@ -778,7 +778,12 @@ sub process
$oBackupManifest->set(MANIFEST_SECTION_BACKUP, MANIFEST_KEY_TYPE, undef, $strType);
$oBackupManifest->numericSet(MANIFEST_SECTION_BACKUP, MANIFEST_KEY_TIMESTAMP_START, undef, $lTimestampStart);
$oBackupManifest->boolSet(MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_BACKUP_STANDBY, undef, cfgOption(CFGOPT_BACKUP_STANDBY));
+ $oBackupManifest->numericSet(MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_BUFFER_SIZE, undef, cfgOption(CFGOPT_BUFFER_SIZE));
$oBackupManifest->boolSet(MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_COMPRESS, undef, $bCompress);
+ $oBackupManifest->numericSet(
+ MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_COMPRESS_LEVEL, undef, cfgOption(CFGOPT_COMPRESS_LEVEL));
+ $oBackupManifest->numericSet(
+ MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_COMPRESS_LEVEL_NETWORK, undef, cfgOption(CFGOPT_COMPRESS_LEVEL_NETWORK));
$oBackupManifest->boolSet(MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_HARDLINK, undef, $bHardLink);
$oBackupManifest->boolSet(MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_ONLINE, undef, cfgOption(CFGOPT_ONLINE));
$oBackupManifest->boolSet(MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_ARCHIVE_COPY, undef,
@@ -786,6 +791,7 @@ sub process
(cfgOption(CFGOPT_ARCHIVE_CHECK) && cfgOption(CFGOPT_ARCHIVE_COPY)));
$oBackupManifest->boolSet(MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_ARCHIVE_CHECK, undef,
!cfgOption(CFGOPT_ONLINE) || cfgOption(CFGOPT_ARCHIVE_CHECK));
+ $oBackupManifest->numericSet(MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_PROCESS_MAX, undef, cfgOption(CFGOPT_PROCESS_MAX));
# Database settings
$oBackupManifest->numericSet(MANIFEST_SECTION_BACKUP_DB, MANIFEST_KEY_DB_ID, undef, $iDbHistoryId);
diff --git a/lib/pgBackRest/Manifest.pm b/lib/pgBackRest/Manifest.pm
index c9607a587..896f597ae 100644
--- a/lib/pgBackRest/Manifest.pm
+++ b/lib/pgBackRest/Manifest.pm
@@ -103,14 +103,22 @@ use constant MANIFEST_KEY_ARCHIVE_CHECK => 'option-'
push @EXPORT, qw(MANIFEST_KEY_ARCHIVE_CHECK);
use constant MANIFEST_KEY_ARCHIVE_COPY => 'option-' .cfgOptionName(CFGOPT_ARCHIVE_COPY);
push @EXPORT, qw(MANIFEST_KEY_ARCHIVE_COPY);
+use constant MANIFEST_KEY_BUFFER_SIZE => 'option-' . cfgOptionName(CFGOPT_BUFFER_SIZE);
+ push @EXPORT, qw(MANIFEST_KEY_BUFFER_SIZE);
use constant MANIFEST_KEY_CHECKSUM_PAGE => 'option-' . cfgOptionName(CFGOPT_CHECKSUM_PAGE);
push @EXPORT, qw(MANIFEST_KEY_CHECKSUM_PAGE);
use constant MANIFEST_KEY_COMPRESS => 'option-' . cfgOptionName(CFGOPT_COMPRESS);
push @EXPORT, qw(MANIFEST_KEY_COMPRESS);
+use constant MANIFEST_KEY_COMPRESS_LEVEL => 'option-' . cfgOptionName(CFGOPT_COMPRESS_LEVEL);
+ push @EXPORT, qw(MANIFEST_KEY_COMPRESS_LEVEL);
+use constant MANIFEST_KEY_COMPRESS_LEVEL_NETWORK => 'option-' . cfgOptionName(CFGOPT_COMPRESS_LEVEL_NETWORK);
+ push @EXPORT, qw(MANIFEST_KEY_COMPRESS_LEVEL_NETWORK);
use constant MANIFEST_KEY_ONLINE => 'option-' . cfgOptionName(CFGOPT_ONLINE);
push @EXPORT, qw(MANIFEST_KEY_ONLINE);
use constant MANIFEST_KEY_DELTA => 'option-' . cfgOptionName(CFGOPT_DELTA);
push @EXPORT, qw(MANIFEST_KEY_DELTA);
+use constant MANIFEST_KEY_PROCESS_MAX => 'option-' . cfgOptionName(CFGOPT_PROCESS_MAX);
+ push @EXPORT, qw(MANIFEST_KEY_PROCESS_MAX);
# Information about the database that was backed up
use constant MANIFEST_KEY_DB_ID => 'db-id';
diff --git a/src/perl/embed.auto.c b/src/perl/embed.auto.c
index 05f120016..105c71f75 100644
--- a/src/perl/embed.auto.c
+++ b/src/perl/embed.auto.c
@@ -2353,7 +2353,12 @@ static const EmbeddedModule embeddedModule[] =
"$oBackupManifest->set(MANIFEST_SECTION_BACKUP, MANIFEST_KEY_TYPE, undef, $strType);\n"
"$oBackupManifest->numericSet(MANIFEST_SECTION_BACKUP, MANIFEST_KEY_TIMESTAMP_START, undef, $lTimestampStart);\n"
"$oBackupManifest->boolSet(MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_BACKUP_STANDBY, undef, cfgOption(CFGOPT_BACKUP_STANDBY));\n"
+ "$oBackupManifest->numericSet(MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_BUFFER_SIZE, undef, cfgOption(CFGOPT_BUFFER_SIZE));\n"
"$oBackupManifest->boolSet(MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_COMPRESS, undef, $bCompress);\n"
+ "$oBackupManifest->numericSet(\n"
+ "MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_COMPRESS_LEVEL, undef, cfgOption(CFGOPT_COMPRESS_LEVEL));\n"
+ "$oBackupManifest->numericSet(\n"
+ "MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_COMPRESS_LEVEL_NETWORK, undef, cfgOption(CFGOPT_COMPRESS_LEVEL_NETWORK));\n"
"$oBackupManifest->boolSet(MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_HARDLINK, undef, $bHardLink);\n"
"$oBackupManifest->boolSet(MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_ONLINE, undef, cfgOption(CFGOPT_ONLINE));\n"
"$oBackupManifest->boolSet(MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_ARCHIVE_COPY, undef,\n"
@@ -2361,6 +2366,7 @@ static const EmbeddedModule embeddedModule[] =
"(cfgOption(CFGOPT_ARCHIVE_CHECK) && cfgOption(CFGOPT_ARCHIVE_COPY)));\n"
"$oBackupManifest->boolSet(MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_ARCHIVE_CHECK, undef,\n"
"!cfgOption(CFGOPT_ONLINE) || cfgOption(CFGOPT_ARCHIVE_CHECK));\n"
+ "$oBackupManifest->numericSet(MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_PROCESS_MAX, undef, cfgOption(CFGOPT_PROCESS_MAX));\n"
"\n\n"
"$oBackupManifest->numericSet(MANIFEST_SECTION_BACKUP_DB, MANIFEST_KEY_DB_ID, undef, $iDbHistoryId);\n"
"$oBackupManifest->numericSet(MANIFEST_SECTION_BACKUP_DB, MANIFEST_KEY_CONTROL, undef, $iControlVersion);\n"
@@ -10843,14 +10849,22 @@ static const EmbeddedModule embeddedModule[] =
"push @EXPORT, qw(MANIFEST_KEY_ARCHIVE_CHECK);\n"
"use constant MANIFEST_KEY_ARCHIVE_COPY => 'option-' .cfgOptionName(CFGOPT_ARCHIVE_COPY);\n"
"push @EXPORT, qw(MANIFEST_KEY_ARCHIVE_COPY);\n"
+ "use constant MANIFEST_KEY_BUFFER_SIZE => 'option-' . cfgOptionName(CFGOPT_BUFFER_SIZE);\n"
+ "push @EXPORT, qw(MANIFEST_KEY_BUFFER_SIZE);\n"
"use constant MANIFEST_KEY_CHECKSUM_PAGE => 'option-' . cfgOptionName(CFGOPT_CHECKSUM_PAGE);\n"
"push @EXPORT, qw(MANIFEST_KEY_CHECKSUM_PAGE);\n"
"use constant MANIFEST_KEY_COMPRESS => 'option-' . cfgOptionName(CFGOPT_COMPRESS);\n"
"push @EXPORT, qw(MANIFEST_KEY_COMPRESS);\n"
+ "use constant MANIFEST_KEY_COMPRESS_LEVEL => 'option-' . cfgOptionName(CFGOPT_COMPRESS_LEVEL);\n"
+ "push @EXPORT, qw(MANIFEST_KEY_COMPRESS_LEVEL);\n"
+ "use constant MANIFEST_KEY_COMPRESS_LEVEL_NETWORK => 'option-' . cfgOptionName(CFGOPT_COMPRESS_LEVEL_NETWORK);\n"
+ "push @EXPORT, qw(MANIFEST_KEY_COMPRESS_LEVEL_NETWORK);\n"
"use constant MANIFEST_KEY_ONLINE => 'option-' . cfgOptionName(CFGOPT_ONLINE);\n"
"push @EXPORT, qw(MANIFEST_KEY_ONLINE);\n"
"use constant MANIFEST_KEY_DELTA => 'option-' . cfgOptionName(CFGOPT_DELTA);\n"
"push @EXPORT, qw(MANIFEST_KEY_DELTA);\n"
+ "use constant MANIFEST_KEY_PROCESS_MAX => 'option-' . cfgOptionName(CFGOPT_PROCESS_MAX);\n"
+ "push @EXPORT, qw(MANIFEST_KEY_PROCESS_MAX);\n"
"\n\n"
"use constant MANIFEST_KEY_DB_ID => 'db-id';\n"
"push @EXPORT, qw(MANIFEST_KEY_DB_ID);\n"
diff --git a/test/expect/mock-all-001.log b/test/expect/mock-all-001.log
index 129f6889c..f5496903a 100644
--- a/test/expect/mock-all-001.log
+++ b/test/expect/mock-all-001.log
@@ -419,11 +419,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=16384
option-checksum-page=true
option-compress=false
+option-compress-level=3
+option-compress-level-network=3
option-delta=false
option-hardlink=false
option-online=false
+option-process-max=1
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base","type":"path"}
@@ -1110,11 +1114,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=true
option-compress=false
+option-compress-level=3
+option-compress-level-network=3
option-delta=true
option-hardlink=false
option-online=false
+option-process-max=1
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base","type":"path"}
@@ -2282,11 +2290,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=true
option-compress=false
+option-compress-level=3
+option-compress-level-network=3
option-delta=false
option-hardlink=false
option-online=false
+option-process-max=1
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base","type":"path"}
@@ -2797,11 +2809,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=true
option-compress=false
+option-compress-level=3
+option-compress-level-network=3
option-delta=true
option-hardlink=false
option-online=false
+option-process-max=1
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base","type":"path"}
@@ -2994,11 +3010,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=true
option-compress=false
+option-compress-level=3
+option-compress-level-network=3
option-delta=true
option-hardlink=false
option-online=false
+option-process-max=1
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base","type":"path"}
@@ -3186,11 +3206,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=true
option-compress=false
+option-compress-level=3
+option-compress-level-network=3
option-delta=true
option-hardlink=false
option-online=false
+option-process-max=1
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base","type":"path"}
@@ -3767,11 +3791,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=true
option-compress=false
+option-compress-level=3
+option-compress-level-network=3
option-delta=false
option-hardlink=false
option-online=false
+option-process-max=1
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base-2","type":"path"}
@@ -4034,11 +4062,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=true
option-compress=false
+option-compress-level=3
+option-compress-level-network=3
option-delta=true
option-hardlink=false
option-online=false
+option-process-max=1
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base-2","type":"path"}
@@ -4228,11 +4260,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=true
option-compress=false
+option-compress-level=3
+option-compress-level-network=3
option-delta=true
option-hardlink=false
option-online=false
+option-process-max=1
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base-2","type":"path"}
@@ -4401,11 +4437,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=true
option-compress=false
+option-compress-level=3
+option-compress-level-network=3
option-delta=false
option-hardlink=false
option-online=false
+option-process-max=1
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base-2","type":"path"}
@@ -4598,11 +4638,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=true
option-compress=false
+option-compress-level=3
+option-compress-level-network=3
option-delta=true
option-hardlink=false
option-online=false
+option-process-max=1
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base-2","type":"path"}
@@ -4788,11 +4832,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=false
option-compress=true
+option-compress-level=3
+option-compress-level-network=3
option-delta=false
option-hardlink=true
option-online=false
+option-process-max=1
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base-2","type":"path"}
@@ -5342,11 +5390,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=false
option-compress=true
+option-compress-level=3
+option-compress-level-network=3
option-delta=false
option-hardlink=true
option-online=false
+option-process-max=1
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base-2","type":"path"}
@@ -5830,11 +5882,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=false
option-compress=true
+option-compress-level=3
+option-compress-level-network=3
option-delta=false
option-hardlink=true
option-online=false
+option-process-max=1
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base-2/base","type":"path"}
@@ -5999,11 +6055,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=false
option-compress=true
+option-compress-level=3
+option-compress-level-network=3
option-delta=false
option-hardlink=true
option-online=false
+option-process-max=1
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base-2/base","type":"path"}
diff --git a/test/expect/mock-all-002.log b/test/expect/mock-all-002.log
index 723b0d691..4ddf0c5ac 100644
--- a/test/expect/mock-all-002.log
+++ b/test/expect/mock-all-002.log
@@ -165,11 +165,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=16384
option-checksum-page=true
option-compress=false
+option-compress-level=3
+option-compress-level-network=1
option-delta=false
option-hardlink=false
option-online=false
+option-process-max=1
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base","type":"path"}
@@ -348,11 +352,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=true
option-compress=false
+option-compress-level=3
+option-compress-level-network=1
option-delta=false
option-hardlink=false
option-online=false
+option-process-max=2
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base","type":"path"}
@@ -636,11 +644,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=true
option-compress=false
+option-compress-level=3
+option-compress-level-network=1
option-delta=false
option-hardlink=false
option-online=false
+option-process-max=2
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base","type":"path"}
@@ -830,11 +842,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=true
option-compress=false
+option-compress-level=3
+option-compress-level-network=1
option-delta=true
option-hardlink=false
option-online=false
+option-process-max=1
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base","type":"path"}
@@ -1034,11 +1050,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=true
option-compress=false
+option-compress-level=3
+option-compress-level-network=1
option-delta=true
option-hardlink=false
option-online=false
+option-process-max=1
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base","type":"path"}
@@ -1234,11 +1254,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=true
option-compress=false
+option-compress-level=3
+option-compress-level-network=1
option-delta=true
option-hardlink=false
option-online=false
+option-process-max=1
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base","type":"path"}
@@ -1455,11 +1479,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=true
option-compress=false
+option-compress-level=3
+option-compress-level-network=1
option-delta=false
option-hardlink=false
option-online=false
+option-process-max=1
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base-2","type":"path"}
@@ -1677,11 +1705,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=true
option-compress=false
+option-compress-level=3
+option-compress-level-network=1
option-delta=true
option-hardlink=false
option-online=false
+option-process-max=2
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base-2","type":"path"}
@@ -1878,11 +1910,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=true
option-compress=false
+option-compress-level=3
+option-compress-level-network=1
option-delta=true
option-hardlink=false
option-online=false
+option-process-max=1
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base-2","type":"path"}
@@ -2077,11 +2113,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=true
option-compress=false
+option-compress-level=3
+option-compress-level-network=1
option-delta=false
option-hardlink=false
option-online=false
+option-process-max=2
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base-2","type":"path"}
@@ -2280,11 +2320,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=true
option-compress=false
+option-compress-level=3
+option-compress-level-network=1
option-delta=true
option-hardlink=false
option-online=false
+option-process-max=1
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base-2","type":"path"}
@@ -2475,11 +2519,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=false
option-compress=true
+option-compress-level=3
+option-compress-level-network=1
option-delta=false
option-hardlink=false
option-online=false
+option-process-max=2
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base-2","type":"path"}
@@ -3031,11 +3079,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=false
option-compress=true
+option-compress-level=3
+option-compress-level-network=1
option-delta=false
option-hardlink=false
option-online=false
+option-process-max=2
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base-2","type":"path"}
@@ -3408,11 +3460,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=false
option-compress=true
+option-compress-level=3
+option-compress-level-network=1
option-delta=false
option-hardlink=false
option-online=false
+option-process-max=2
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base-2/base","type":"path"}
@@ -3610,11 +3666,15 @@ db-version="9.4"
option-archive-check=true
option-archive-copy=true
option-backup-standby=false
+option-buffer-size=4194304
option-checksum-page=false
option-compress=true
+option-compress-level=3
+option-compress-level-network=1
option-delta=false
option-hardlink=false
option-online=false
+option-process-max=2
[backup:target]
pg_data={"path":"[TEST_PATH]/db-master/db/base-2/base","type":"path"}
diff --git a/test/lib/pgBackRestTest/Env/Host/HostBackupTest.pm b/test/lib/pgBackRestTest/Env/Host/HostBackupTest.pm
index 3c0c63b78..5b731dbfc 100644
--- a/test/lib/pgBackRestTest/Env/Host/HostBackupTest.pm
+++ b/test/lib/pgBackRestTest/Env/Host/HostBackupTest.pm
@@ -1938,12 +1938,20 @@ sub restoreCompare
${$oExpectedManifestRef}{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_ARCHIVE_COPY});
$oActualManifest->set(MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_BACKUP_STANDBY, undef,
${$oExpectedManifestRef}{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_BACKUP_STANDBY});
+ $oActualManifest->set(MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_BUFFER_SIZE, undef,
+ ${$oExpectedManifestRef}{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_BUFFER_SIZE});
$oActualManifest->set(MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_COMPRESS, undef,
${$oExpectedManifestRef}{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_COMPRESS});
+ $oActualManifest->set(MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_COMPRESS_LEVEL, undef,
+ ${$oExpectedManifestRef}{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_COMPRESS_LEVEL});
+ $oActualManifest->set(MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_COMPRESS_LEVEL_NETWORK, undef,
+ ${$oExpectedManifestRef}{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_COMPRESS_LEVEL_NETWORK});
$oActualManifest->set(MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_HARDLINK, undef,
${$oExpectedManifestRef}{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_HARDLINK});
$oActualManifest->set(MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_ONLINE, undef,
${$oExpectedManifestRef}{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_ONLINE});
+ $oActualManifest->set(MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_PROCESS_MAX, undef,
+ ${$oExpectedManifestRef}{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_PROCESS_MAX});
$oActualManifest->boolSet(MANIFEST_SECTION_BACKUP_OPTION, MANIFEST_KEY_DELTA, undef,
${$oExpectedManifestRef}{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_DELTA});
diff --git a/test/lib/pgBackRestTest/Module/Mock/MockAllTest.pm b/test/lib/pgBackRestTest/Module/Mock/MockAllTest.pm
index b5f06e8a0..ad421a3dd 100644
--- a/test/lib/pgBackRestTest/Module/Mock/MockAllTest.pm
+++ b/test/lib/pgBackRestTest/Module/Mock/MockAllTest.pm
@@ -115,10 +115,14 @@ sub run
$oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_ARCHIVE_CHECK} = JSON::PP::true;
$oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_ARCHIVE_COPY} = JSON::PP::true;
$oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_BACKUP_STANDBY} = JSON::PP::false;
+ $oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_BUFFER_SIZE} = 16384;
$oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_CHECKSUM_PAGE} = JSON::PP::true;
$oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_COMPRESS} = JSON::PP::false;
+ $oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_COMPRESS_LEVEL} = 3;
+ $oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_COMPRESS_LEVEL_NETWORK} = $bRemote ? 1 : 3;
$oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_HARDLINK} = JSON::PP::false;
$oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_ONLINE} = JSON::PP::false;
+ $oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_PROCESS_MAX} = $bS3 ? 2 : 1;
$oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_DELTA} = JSON::PP::false;
if ($bEncrypt)
@@ -385,6 +389,8 @@ sub run
$oHostDbMaster->manifestFileCreate(
\%oManifest, MANIFEST_TARGET_PGDATA, 'special-@!#$^&*()-_+~`{}[]\|:;"<>\',.?%', undef, undef, $lTime, undef, true);
+ $oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_PROCESS_MAX} = 1;
+
$strFullBackup = $oHostBackup->backup(
$strType, 'create pg_stat link, pg_clog dir',
{oExpectedManifest => \%oManifest,
@@ -399,6 +405,9 @@ sub run
' --' . cfgOptionName(CFGOPT_PROCESS_MAX) . '=1',
strRepoType => $bS3 ? undef : CFGOPTVAL_REPO_TYPE_CIFS, strTest => $strTestPoint, fTestDelay => 0});
+ $oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_PROCESS_MAX} = $bS3 ? 2 : 1;
+ $oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_BUFFER_SIZE} = 4194304;
+
# Error on backup option to check logging
#---------------------------------------------------------------------------------------------------------------------------
if (!$bRemote)
@@ -1000,11 +1009,15 @@ sub run
delete($oManifest{&MANIFEST_SECTION_TARGET_FILE}{'pg_data/changecontent.txt'}{&MANIFEST_SUBKEY_REFERENCE});
$oManifest{&MANIFEST_SECTION_TARGET_FILE}{'pg_data/changetime.txt'}{&MANIFEST_SUBKEY_TIMESTAMP} = $lTime - 100;
+ $oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_PROCESS_MAX} = 1;
+
$strBackup = $oHostBackup->backup(
$strType, 'resume and add tablespace 2',
{oExpectedManifest => \%oManifest, strTest => TEST_BACKUP_RESUME,
strOptionalParam => '--' . cfgOptionName(CFGOPT_PROCESS_MAX) . '=1' . ($bDeltaBackup ? ' --delta' : '')});
+ $oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_PROCESS_MAX} = $bS3 ? 2 : 1;
+
if (!$bRemote)
{
# Remove the size-changed test file to avoid expect log churn
@@ -1025,12 +1038,16 @@ sub run
forceStorageRemove(storageRepo(), "${strResumePath}/" . FILE_MANIFEST);
# The aborted backup is of a different type so is not resumable and is removed. A differential is created.
+ $oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_PROCESS_MAX} = 1;
+
$strBackup = $oHostBackup->backup(
$strType, 'cannot resume - new diff',
{oExpectedManifest => \%oManifest, strTest => TEST_BACKUP_NORESUME,
strOptionalParam => "$strLogReduced --" . cfgOptionName(CFGOPT_PROCESS_MAX) . '=1' .
($bDeltaBackup ? ' --delta' : '')});
+ $oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_PROCESS_MAX} = $bS3 ? 2 : 1;
+
# Resume Diff Backup
#---------------------------------------------------------------------------------------------------------------------------
$strType = CFGOPTVAL_BACKUP_TYPE_DIFF;
@@ -1043,12 +1060,16 @@ sub run
# The aborted backup is of the same type so it is resumable but passing --no-resume. Pass --delta same as before to avoid
# expect log churn and to test restore with a --delta manifest.
+ $oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_PROCESS_MAX} = 1;
+
$strBackup = $oHostBackup->backup(
$strType, 'cannot resume - disabled / no repo link',
{oExpectedManifest => \%oManifest, strTest => TEST_BACKUP_NORESUME,
strOptionalParam => "--no-resume ${strLogReduced} --" . cfgOptionName(CFGOPT_PROCESS_MAX) . '=1' .
($bDeltaBackup ? ' --delta' : '')});
+ $oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_PROCESS_MAX} = $bS3 ? 2 : 1;
+
# Restore
#---------------------------------------------------------------------------------------------------------------------------
# Fail on used path
@@ -1104,10 +1125,14 @@ sub run
# Munge the version to make sure it gets corrected on the next run
$oHostBackup->manifestMunge($strBackup, {&INI_SECTION_BACKREST => {&INI_KEY_VERSION => '0.00'}}, false);
+ $oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_PROCESS_MAX} = 1;
+
$strBackup = $oHostBackup->backup(
$strType, 'add files and remove tablespace 2',
{oExpectedManifest => \%oManifest, strOptionalParam => "$strLogReduced --" . cfgOptionName(CFGOPT_PROCESS_MAX) . '=1'});
+ $oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_PROCESS_MAX} = $bS3 ? 2 : 1;
+
# Incr Backup
#---------------------------------------------------------------------------------------------------------------------------
$strType = CFGOPTVAL_BACKUP_TYPE_INCR;
@@ -1168,11 +1193,15 @@ sub run
$strType = CFGOPTVAL_BACKUP_TYPE_DIFF;
$oHostDbMaster->manifestReference(\%oManifest, $strFullBackup, true);
+ $oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_PROCESS_MAX} = 1;
+
$strBackup = $oHostBackup->backup(
$strType, 'updates since last full', {oExpectedManifest => \%oManifest,
strOptionalParam => "$strLogReduced --" . cfgOptionName(CFGOPT_PROCESS_MAX) . '=1' .
($bDeltaBackup ? ' --delta' : '')});
+ $oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_PROCESS_MAX} = $bS3 ? 2 : 1;
+
# Incr Backup
#
# Remove a file from the db after the manifest has been built but before files are copied. The file will not be shown
@@ -1216,6 +1245,8 @@ sub run
$oHostBackup->configUpdate({&CFGDEF_SECTION_GLOBAL => {cfgOptionName(CFGOPT_REPO_HARDLINK) => 'y'}});
}
+ $oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_PROCESS_MAX} = 1;
+
$oBackupExecute = $oHostBackup->backupBegin(
$strType, 'remove files during backup',
{oExpectedManifest => \%oManifest, strTest => TEST_MANIFEST_BUILD, fTestDelay => 1,
@@ -1230,6 +1261,8 @@ sub run
$strBackup = $oHostBackup->backupEnd($strType, $oBackupExecute, {oExpectedManifest => \%oManifest});
+ $oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_PROCESS_MAX} = $bS3 ? 2 : 1;
+
# Full Backup
#---------------------------------------------------------------------------------------------------------------------------
$strType = CFGOPTVAL_BACKUP_TYPE_FULL;