1
0
mirror of https://github.com/pgbackrest/pgbackrest.git synced 2025-06-14 23:44:58 +02:00

Add additional options to backup.manifest for debugging purposes.

Add the buffer-size, compress-level, compress-level-network, and process-max options to the backup:option section in backup.manifest to aid in debugging.

It may also make sense to propagate these options up to backup.info so they can be displayed in the info command, but for now this is deemed sufficient.

Contributed by blogh.
This commit is contained in:
blogh
2019-03-10 11:03:52 +02:00
committed by David Steele
parent 21f56f64eb
commit e4e2606fce
8 changed files with 197 additions and 0 deletions

View File

@ -76,6 +76,14 @@
<p>Improve error when hostname cannot be found in a certificate.</p>
</release-item>
<release-item>
<release-item-contributor-list>
<release-item-contributor id="benoit.lobréau"/>
</release-item-contributor-list>
<p>Add additional options to <file>backup.manifest</file> for debugging purposes.</p>
</release-item>
</release-improvement-list>
<release-development-list>

View File

@ -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);

View File

@ -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';

View File

@ -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"

View File

@ -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"}

View File

@ -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"}

View File

@ -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});

View File

@ -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;