diff --git a/CHANGELOG.md b/CHANGELOG.md index 64e03f867..b895aa25f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,8 @@ __No Release Date Set__ * Enhanced text output of `info` command to include timestamps, sizes, and the reference list for all backups. _Contributed by Cynthia Shang_. +* Allow selective restore of databases from a cluster backup. This feature can result in major space and time savings when only specific databases are restored. Unrestored databases will not be accessible but must be manually dropped before they will be removed from the shared catalogue. + ## v1.00: New Repository Format and Configuration Scheme, Link Support __Released April 14, 2016__ diff --git a/doc/xml/backlog.xml b/doc/xml/backlog.xml index c52f9fa41..23665bf34 100644 --- a/doc/xml/backlog.xml +++ b/doc/xml/backlog.xml @@ -430,6 +430,12 @@

The debug params all end up on a single line so if one value changes it's tough to tell which one changed. Separate them out onto separate lines to aid debugging (even though this will add a lot of lines to the file.)

+
+ Automatically document options that can be passed multiple times + +

Some options can be passed multiple times on the command line (or the config file) and this should be written into the reference guide automatically rather than being manually written per option.

+
+
Document ForceCommand & sudo method for security diff --git a/doc/xml/change-log.xml b/doc/xml/change-log.xml index cb60631bc..b54bd1525 100644 --- a/doc/xml/change-log.xml +++ b/doc/xml/change-log.xml @@ -8,7 +8,12 @@ - Enhanced text output of info command to include timestamps, sizes, and the reference list for all backups. Contributed by Cynthia Shang. + + Enhanced text output of info command to include timestamps, sizes, and the reference list for all backups. Contributed by Cynthia Shang. + + + Allow selective restore of databases from a cluster backup. This feature can result in major space and time savings when only specific databases are restored. Unrestored databases will not be accessible but must be manually dropped before they will be removed from the shared catalogue. + diff --git a/doc/xml/reference.xml b/doc/xml/reference.xml index bbed0b9f8..15370d08c 100644 --- a/doc/xml/reference.xml +++ b/doc/xml/reference.xml @@ -334,6 +334,19 @@ The restore section defines settings used for restoring backups. + + + Restore only specified databases. + + This feature allows only selected databases to be restored. Databases not specifically included will be restored as sparse, zeroed files to save space but still allow to perform recovery. After recovery the databases that were not included will not be accessible but can be removed with the drop database command. + + Note that built-in databases (template0, template1, and postgres) are always restored. + + The {[dash]}-db-include option can be passed multiple times to specify more than one database to include. + + db_main + + Restore all symlinks. diff --git a/doc/xml/user-guide.xml b/doc/xml/user-guide.xml index c3050910a..d0d24c92d 100644 --- a/doc/xml/user-guide.xml +++ b/doc/xml/user-guide.xml @@ -516,7 +516,7 @@
-
+
Backup

The Backup section introduces additional backup command features.

@@ -621,7 +621,7 @@
-
+
Retention

Generally it is best to retain as many backups as possible to provide a greater window for Point-in-Time Recovery, but practical concerns such as disk space must also be considered. Retention options remove older backups once they are no longer needed.

@@ -714,7 +714,7 @@
-
+
Restore

The Restore section introduces additional restore command features.

@@ -751,6 +751,154 @@
+ + +
+ Restore Selected Databases + +

There may be cases where it is desirable to selectively restore specific databases from a cluster backup. This could be done for performance reasons or to move selected databases to a machine that does not have enough space to restore the entire cluster backup.

+ +

To demonstrate this feature two databases are created: test1 and test2. A fresh backup is run so is aware of the new databases.

+ + + Create two test databases and perform a backup + + + + psql -c "create database test1;" + + + + + + psql -c "create database test2;" + + + + + {[project-exe]} {[dash]}-stanza={[postgres-cluster-demo]} --type=incr backup + + + +

Each test database will be seeded with tables and data to demonstrate that recovery works with selective restore.

+ + + Create a test table in each database + + + + psql -c "create table test1_table (id int); + insert into test1_table (id) values (1);" test1 + + + + + + psql -c "create table test2_table (id int); + insert into test2_table (id) values (2);" test2 + + + + +

One of the main reasons to use selective restore is to save space. The size of the test1 database is shown here so it can be compared with the disk utilization after a selective restore.

+ + + Show space used by test1 database + + + + du -sh {[db-path]}/base/16384 + + + + +

Stop the cluster and restore only the test2 database. Built-in databases (template0, template1, and postgres) are always restored.

+ + + Restore from last backup including only the test2 database + + + {[db-cluster-stop]} + + + + {[project-exe]} {[dash]}-stanza={[postgres-cluster-demo]} {[dash]}-delta + {[dash]}-db-include=test2 restore + + + + {[db-cluster-start]} + + + + {[db-cluster-wait]} + + + +

Once recovery is complete the test2 database will contain all previously created tables and data.

+ + + Demonstrate that the test2 database was recovered + + + + psql -c "select * from test2_table;" test2 + + + + +

The test1 database, despite successful recovery, is not accessible. This is because the entire database was restored as sparse, zeroed files. can successfully apply WAL on the zeroed files but the database as a whole will not be valid because key files contain no data. This is purposeful to prevent the database from being accidentally used when it might contain partial data that was applied during WAL replay.

+ + + Attempting to connect to the test1 database will produce an error + + + + psql -c "select * from test1_table;" test1 + + relation mapping file.*contains invalid data + + + +

Since the test1 database is restored with sparse, zeroed files it will only require as much space as the amount of WAL that is written during recovery. While the amount of WAL generated during a backup and applied during recovery can be significant it will generally be a small fraction of the total database size, especially for large databases where this feature is most likely to be useful.

+ +

It is clear that the test1 database uses far less disk space during the selective restore than it would have if the entire database had been restored.

+ + + Show space used by test1 database after recovery + + + + du -sh {[db-path]}/base/16384 + + + + +

At this point the only action that can be taken on the invalid test1 database is drop database. does not automatically drop the database since this cannot be done until recovery is complete and the cluster is accessible.

+ + + Drop the test1 database + + + + psql -c "drop database test1;" + + + + +

Now that the invalid test1 database has been dropped only the test2 and built-in databases remain.

+ + + List remaining databases + + + + psql -c "select oid, datname from pg_database order by oid;" + + test2 + + +
@@ -774,7 +922,7 @@ create table important_table (message text); insert into important_table values ('{[test-table-data]}'); commit; - select * from important_table"; + select * from important_table;" {[test-table-data]} diff --git a/lib/pgBackRest/Backup.pm b/lib/pgBackRest/Backup.pm index 09938cbf4..e3bc64f80 100644 --- a/lib/pgBackRest/Backup.pm +++ b/lib/pgBackRest/Backup.pm @@ -640,6 +640,7 @@ sub process # Start backup (unless --no-online is set) my $strArchiveStart; my $oTablespaceMap; + my $oDatabaseMap; # Don't start the backup but do check if PostgreSQL is running if (!optionGet(OPTION_ONLINE)) @@ -673,13 +674,16 @@ sub process $oBackupManifest->set(MANIFEST_SECTION_BACKUP, MANIFEST_KEY_ARCHIVE_START, undef, $strArchiveStart); &log(INFO, "archive start: ${strArchiveStart}"); - # Build the backup manifest + # Get tablespace map $oTablespaceMap = $self->{oDb}->tablespaceMapGet(); + + # Get database map + $oDatabaseMap = $self->{oDb}->databaseMapGet(); } # Buid the manifest $oBackupManifest->build($self->{oFile}, optionGet(OPTION_DB_PATH), $oLastManifest, optionGet(OPTION_ONLINE), - $oTablespaceMap); + $oTablespaceMap, $oDatabaseMap); &log(TEST, TEST_MANIFEST_BUILD); # Check if an aborted backup exists for this stanza @@ -900,7 +904,7 @@ sub process $oBackupManifest->set(MANIFEST_SECTION_BACKUP, MANIFEST_KEY_TIMESTAMP_STOP, undef, $lTimestampStop + 0); $oBackupManifest->set(MANIFEST_SECTION_BACKUP, MANIFEST_KEY_LABEL, undef, $strBackupLabel); - # Save the backup manifest final time + # Final save of the backup manifest $oBackupManifest->save(); &log(INFO, "new backup label = ${strBackupLabel}"); @@ -914,7 +918,7 @@ sub process logDebugMisc($strOperation, "move ${strBackupTmpPath} to " . $self->{oFile}->pathGet(PATH_BACKUP_CLUSTER, $strBackupLabel)); $self->{oFile}->move(PATH_BACKUP_TMP, undef, PATH_BACKUP_CLUSTER, $strBackupLabel); - # Move historical and current manifests + # Copy manifest to history $self->{oFile}->move(PATH_BACKUP_CLUSTER, "${strBackupLabel}/" . FILE_MANIFEST . '.gz', PATH_BACKUP_CLUSTER, PATH_BACKUP_HISTORY . qw{/} . substr($strBackupLabel, 0, 4) . "/${strBackupLabel}.manifest.gz", true); diff --git a/lib/pgBackRest/Common/Exception.pm b/lib/pgBackRest/Common/Exception.pm index 597a6419b..e39bee91b 100644 --- a/lib/pgBackRest/Common/Exception.pm +++ b/lib/pgBackRest/Common/Exception.pm @@ -126,6 +126,12 @@ use constant ERROR_PATH_TYPE => ERROR_MIN push @EXPORT, qw(ERROR_PATH_TYPE); use constant ERROR_LINK_MAP => ERROR_MINIMUM + 53; push @EXPORT, qw(ERROR_LINK_MAP); +use constant ERROR_FILE_CLOSE => ERROR_MINIMUM + 54; + push @EXPORT, qw(ERROR_FILE_CLOSE); +use constant ERROR_DB_MISSING => ERROR_MINIMUM + 55; + push @EXPORT, qw(ERROR_DB_MISSING); +use constant ERROR_DB_INVALID => ERROR_MINIMUM + 56; + push @EXPORT, qw(ERROR_DB_INVALID); use constant ERROR_INVALID_VALUE => ERROR_MAXIMUM - 1; push @EXPORT, qw(ERROR_INVALID_VALUE); diff --git a/lib/pgBackRest/Config/Config.pm b/lib/pgBackRest/Config/Config.pm index 538e7390d..e0f55e81f 100644 --- a/lib/pgBackRest/Config/Config.pm +++ b/lib/pgBackRest/Config/Config.pm @@ -143,6 +143,8 @@ use constant OPTION_RULE_DEPEND_LIST => 'depend-l push @EXPORT, qw(OPTION_RULE_DEPEND_LIST); use constant OPTION_RULE_DEPEND_VALUE => 'depend-value'; push @EXPORT, qw(OPTION_RULE_DEPEND_VALUE); +use constant OPTION_RULE_HASH_VALUE => 'hash-value'; + push @EXPORT, qw(OPTION_RULE_HASH_VALUE); use constant OPTION_RULE_HINT => 'hint'; push @EXPORT, qw(OPTION_RULE_HINT); use constant OPTION_RULE_NEGATE => 'negate'; @@ -317,6 +319,8 @@ use constant OPTION_RETENTION_FULL => 'retentio # RESTORE Section #----------------------------------------------------------------------------------------------------------------------------------- +use constant OPTION_DB_INCLUDE => 'db-include'; + push @EXPORT, qw(OPTION_DB_INCLUDE); use constant OPTION_LINK_ALL => 'link-all'; push @EXPORT, qw(OPTION_LINK_ALL); use constant OPTION_LINK_MAP => 'link-map'; @@ -1357,6 +1361,18 @@ my %oOptionRule = # RESTORE Section #------------------------------------------------------------------------------------------------------------------------------- + &OPTION_DB_INCLUDE => + { + &OPTION_RULE_SECTION => CONFIG_SECTION_GLOBAL, + &OPTION_RULE_TYPE => OPTION_TYPE_HASH, + &OPTION_RULE_HASH_VALUE => false, + &OPTION_RULE_REQUIRED => false, + &OPTION_RULE_COMMAND => + { + &CMD_RESTORE => true + }, + }, + &OPTION_LINK_ALL => { &OPTION_RULE_SECTION => CONFIG_SECTION_GLOBAL, @@ -1965,25 +1981,41 @@ sub optionValid { foreach my $strItem (@{$strValue}) { - # Check for = and make sure there is a least one character on each side - my $iEqualPos = index($strItem, '='); + my $strKey; + my $strValue; - if ($iEqualPos < 1 || length($strItem) <= $iEqualPos + 1) + # If the keys are expected to have values + if (!defined($oOptionRule{$strOption}{&OPTION_RULE_HASH_VALUE}) || + $oOptionRule{$strOption}{&OPTION_RULE_HASH_VALUE}) { - confess &log(ERROR, "'${strItem}' not valid key/value for '${strOption}' option", - ERROR_OPTION_INVALID_PAIR); + # Check for = and make sure there is a least one character on each side + my $iEqualPos = index($strItem, '='); + + if ($iEqualPos < 1 || length($strItem) <= $iEqualPos + 1) + { + confess &log(ERROR, "'${strItem}' not valid key/value for '${strOption}' option", + ERROR_OPTION_INVALID_PAIR); + } + + $strKey = substr($strItem, 0, $iEqualPos); + $strValue = substr($strItem, $iEqualPos + 1); + } + # Else no values are expected so set value to true + else + { + $strKey = $strItem; + $strValue = true; } # Check that the key has not already been set - my $strKey = substr($strItem, 0, $iEqualPos); - if (defined($oOption{$strOption}{$strKey}{value})) { confess &log(ERROR, "'${$strItem}' already defined for '${strOption}' option", ERROR_OPTION_DUPLICATE_KEY); } - $oOption{$strOption}{value}{$strKey} = substr($strItem, $iEqualPos + 1); + # Set key/value + $oOption{$strOption}{value}{$strKey} = $strValue; } } else diff --git a/lib/pgBackRest/Config/ConfigHelpData.pm b/lib/pgBackRest/Config/ConfigHelpData.pm index 02e6e9211..0535e0041 100644 --- a/lib/pgBackRest/Config/ConfigHelpData.pm +++ b/lib/pgBackRest/Config/ConfigHelpData.pm @@ -210,6 +210,24 @@ my $oConfigHelpData = "Used for backups where the database cluster host is different from the backup host." }, + # DB-INCLUDE Option Help + #--------------------------------------------------------------------------------------------------------------------------- + 'db-include' => + { + section => 'restore', + summary => + "Restore only specified databases.", + description => + "This feature allows only selected databases to be restored. Databases not specifically included will be " . + "restored as sparse, zeroed files to save space but still allow PostgreSQL to perform recovery. After " . + "recovery the databases that were not included will not be accessible but can be removed with the drop " . + "database command.\n" . + "\n" . + "Note that built-in databases (template0, template1, and postgres) are always restored.\n" . + "\n" . + "The --db-include option can be passed multiple times to specify more than one database to include." + }, + # DB-PATH Option Help #--------------------------------------------------------------------------------------------------------------------------- 'db-path' => @@ -908,6 +926,7 @@ my $oConfigHelpData = 'compress-level-network' => 'section', 'config' => 'default', 'config-remote' => 'section', + 'db-include' => 'section', 'db-timeout' => 'section', # DELTA Option Help diff --git a/lib/pgBackRest/Db.pm b/lib/pgBackRest/Db.pm index 84c6d389f..599960292 100644 --- a/lib/pgBackRest/Db.pm +++ b/lib/pgBackRest/Db.pm @@ -21,6 +21,7 @@ use pgBackRest::Common::String; use pgBackRest::Common::Wait; use pgBackRest::Config::Config; use pgBackRest::File; +use pgBackRest::Manifest; use pgBackRest::Version; #################################################################################################################################### @@ -367,6 +368,29 @@ sub tablespaceMapGet ); } +#################################################################################################################################### +# databaseMapGet +# +# Get the mapping between oid and database name. +#################################################################################################################################### +sub databaseMapGet +{ + my $self = shift; + + # Assign function parameters, defaults, and log debug info + my ($strOperation) = logDebugParam(__PACKAGE__ . '->databaseMapGet'); + + dataHashBuild(my $oDatabaseMapRef = {}, "name\t" . MANIFEST_KEY_DB_ID . "\t" . MANIFEST_KEY_DB_LAST_SYSTEM_ID . "\n" . + $self->executeSql('select datname, oid, datlastsysoid from pg_database'), "\t"); + + # Return from function and log return values if any + return logDebugReturn + ( + $strOperation, + {name => 'oDatabaseMapRef', value => $oDatabaseMapRef} + ); +} + #################################################################################################################################### # info #################################################################################################################################### diff --git a/lib/pgBackRest/FileCommon.pm b/lib/pgBackRest/FileCommon.pm index eaed60beb..b274ac8ca 100644 --- a/lib/pgBackRest/FileCommon.pm +++ b/lib/pgBackRest/FileCommon.pm @@ -351,6 +351,52 @@ sub fileMove push @EXPORT, qw(fileMove); +#################################################################################################################################### +# fileOpen +# +# Open a file. +#################################################################################################################################### +sub fileOpen +{ + # Assign function parameters, defaults, and log debug info + my + ( + $strOperation, + $strFile, + $lFlags + ) = + logDebugParam + ( + __PACKAGE__ . '::fileOpen', \@_, + {name => 'strFile', trace => true}, + {name => 'lFlags', trace => true} + ); + + my $hFile; + + if (!sysopen($hFile, $strFile, $lFlags)) + { + my $strError = $!; + + # If file exists then throw the error + if (fileExists($strFile)) + { + confess &log(ERROR, "unable to open ${strFile}" . (defined($strError) ? ": $strError" : ''), ERROR_FILE_OPEN); + } + + confess &log(ERROR, "${strFile} does not exist", ERROR_FILE_MISSING); + } + + # Return from function and log return values if any + return logDebugReturn + ( + $strOperation, + {name => 'hFile', value => $hFile, trace => true} + ); +} + +push @EXPORT, qw(fileOpen); + #################################################################################################################################### # filePathSync # @@ -379,10 +425,7 @@ sub filePathSync or confess &log(ERROR, "unable to sync ${strPath}", ERROR_PATH_SYNC); # Return from function and log return values if any - return logDebugReturn - ( - $strOperation - ); + return logDebugReturn($strOperation); } push @EXPORT, qw(filePathSync); diff --git a/lib/pgBackRest/Manifest.pm b/lib/pgBackRest/Manifest.pm index 159ae9b78..7fc420c1c 100644 --- a/lib/pgBackRest/Manifest.pm +++ b/lib/pgBackRest/Manifest.pm @@ -68,6 +68,8 @@ use constant MANIFEST_SECTION_BACKUP_OPTION => 'backup:o push @EXPORT, qw(MANIFEST_SECTION_BACKUP_OPTION); use constant MANIFEST_SECTION_BACKUP_TARGET => 'backup:target'; push @EXPORT, qw(MANIFEST_SECTION_BACKUP_TARGET); +use constant MANIFEST_SECTION_DB => 'db'; + push @EXPORT, qw(MANIFEST_SECTION_DB); use constant MANIFEST_SECTION_TARGET_PATH => 'target:path'; push @EXPORT, qw(MANIFEST_SECTION_TARGET_PATH); use constant MANIFEST_SECTION_TARGET_FILE => 'target:file'; @@ -114,6 +116,8 @@ use constant MANIFEST_KEY_CATALOG => 'db-catal push @EXPORT, qw(MANIFEST_KEY_CATALOG); use constant MANIFEST_KEY_CONTROL => 'db-control-version'; push @EXPORT, qw(MANIFEST_KEY_CONTROL); +use constant MANIFEST_KEY_DB_LAST_SYSTEM_ID => 'db-last-system-id'; + push @EXPORT, qw(MANIFEST_KEY_DB_LAST_SYSTEM_ID); use constant MANIFEST_KEY_DB_VERSION => 'db-version'; push @EXPORT, qw(MANIFEST_KEY_DB_VERSION); @@ -165,6 +169,12 @@ use constant MANIFEST_FILE_TABLESPACEMAP => MANIFEST_ use constant MANIFEST_FILE_PGCONTROL => MANIFEST_TARGET_PGDATA . '/global/pg_control'; push @EXPORT, qw(MANIFEST_FILE_PGCONTROL); +#################################################################################################################################### +# Minimum ID for a user object in postgres +#################################################################################################################################### +use constant DB_USER_OBJECT_MINIMUM_ID => 16384; + push @EXPORT, qw(DB_USER_OBJECT_MINIMUM_ID); + #################################################################################################################################### # new #################################################################################################################################### @@ -455,6 +465,7 @@ sub build $oLastManifest, $bOnline, $oTablespaceMapRef, + $oDatabaseMapRef, $strLevel, $bTablespace, $strParentPath, @@ -468,6 +479,7 @@ sub build {name => 'oLastManifest', required => false}, {name => 'bOnline'}, {name => 'oTablespaceMapRef', required => false}, + {name => 'oDatabaseMapRef', required => false}, {name => 'strLevel', required => false}, {name => 'bTablespace', required => false}, {name => 'strParentPath', required => false}, @@ -664,7 +676,7 @@ sub build $strPath = dirname("${strPath}/${strName}"); - $self->build($oFile, $strLinkDestination, undef, $bOnline, $oTablespaceMapRef, + $self->build($oFile, $strLinkDestination, undef, $bOnline, $oTablespaceMapRef, $oDatabaseMapRef, $strFile, $bTablespace, $strPath, $strFilter, $strLinkDestination); } } @@ -690,6 +702,15 @@ sub build $oLastManifest->get(MANIFEST_SECTION_BACKUP, MANIFEST_KEY_LABEL)); } + # Store database map information when provided during an online backup. + foreach my $strDbName (sort(keys(%{${$oDatabaseMapRef}{name}}))) + { + $self->numericSet(MANIFEST_SECTION_DB, $strDbName, MANIFEST_KEY_DB_ID, + ${$oDatabaseMapRef}{'name'}{$strDbName}{&MANIFEST_KEY_DB_ID}); + $self->numericSet(MANIFEST_SECTION_DB, $strDbName, MANIFEST_KEY_DB_LAST_SYSTEM_ID, + ${$oDatabaseMapRef}{'name'}{$strDbName}{&MANIFEST_KEY_DB_LAST_SYSTEM_ID}); + } + # Loop though all files foreach my $strName ($self->keys(MANIFEST_SECTION_TARGET_FILE)) { diff --git a/lib/pgBackRest/Restore.pm b/lib/pgBackRest/Restore.pm index fc287a041..d6e5d67ac 100644 --- a/lib/pgBackRest/Restore.pm +++ b/lib/pgBackRest/Restore.pm @@ -11,7 +11,7 @@ use warnings FATAL => qw(all); use Carp qw(confess); use Cwd qw(abs_path); -use File::Basename qw(dirname); +use File::Basename qw(basename dirname); use File::stat qw(lstat); use lib dirname($0); @@ -1082,6 +1082,89 @@ sub process my $strCurrentUser = getpwuid($<); my $strCurrentGroup = getgrgid($(); + # Build an expression to match files that should be zeroed for filtered restores + my $strDbFilter; + + if (optionTest(OPTION_DB_INCLUDE)) + { + # Build a list of databases from the manifest since the db name/id mappings will not be available for an offline restore. + my %oDbList; + + foreach my $strFile ($oManifest->keys(MANIFEST_SECTION_TARGET_FILE)) + { + if ($strFile =~ ('^' . MANIFEST_TARGET_PGDATA . '\/base\/[0-9]+\/PG\_VERSION')) + { + my $lDbId = basename(dirname($strFile)); + + $oDbList{$lDbId} = true; + } + } + + # If no databases where found then this backup does not contain a valid cluster + if (keys(%oDbList) == 0) + { + confess &log(ASSERT, 'no databases for include/exclude -- does not look like a valid cluster'); + } + + # Log databases found + &log(DETAIL, 'databases for include/exclude (' . join(', ', sort(keys(%oDbList))) . ')'); + + # Remove included databases from the list + my $oDbInclude = optionGet(OPTION_DB_INCLUDE); + + for my $strDbKey (sort(keys(%{$oDbInclude}))) + { + # To be included the db must exist - first treat the key as an id and check for a match + if (!defined($oDbList{$strDbKey})) + { + # If the key does not match as an id then check for a name mapping + my $lDbId = $oManifest->get(MANIFEST_SECTION_DB, $strDbKey, MANIFEST_KEY_DB_ID, false); + + if (!defined($lDbId) || !defined($oDbList{$lDbId})) + { + confess &log(ERROR, "database to include '${strDbKey}' does not exist", ERROR_DB_MISSING); + } + + # Set the key to the id if the name mapping was successful + $strDbKey = $lDbId; + } + + # Error if the db is a built-in db + if ($strDbKey < DB_USER_OBJECT_MINIMUM_ID) + { + confess &log(ERROR, "system databases (template0, postgres, etc.) are included by default", ERROR_DB_INVALID); + } + + # Otherwise remove from list of DBs to zero + delete($oDbList{$strDbKey}); + } + + # Construct regexp to identify files that should be zeroed + for my $strDbKey (sort(keys(%oDbList))) + { + # Only user created databases can be zeroed, never built-in databases + if ($strDbKey >= DB_USER_OBJECT_MINIMUM_ID) + { + # Filter files in base directory + $strDbFilter .= (defined($strDbFilter) ? '|' : '') . + '(^' . MANIFEST_TARGET_PGDATA . '\/base\/' . $strDbKey . '\/)'; + + # Filter files in tablespace directories + for my $strTarget ($oManifest->keys(MANIFEST_SECTION_BACKUP_TARGET)) + { + if ($oManifest->isTargetTablespace($strTarget)) + { + $strDbFilter .= + '|(^' . $strTarget . '\/' . $oManifest->tablespacePathGet() . '\/' . $strDbKey . '\/)'; + } + } + } + } + + # Output the generated filter for debugging + &log(DETAIL, "database filter: $strDbFilter"); + } + # Create hash containing files to restore my %oRestoreHash; my $lSizeTotal = 0; @@ -1127,6 +1210,12 @@ sub process $lSizeTotal += $lSize; } + # Zero files that should be filtered + if (defined($strDbFilter) && $strFile =~ $strDbFilter && $strFile !~ /\/PG\_VERSION$/) + { + $oRestoreHash{$strQueueKey}{$strFileKey}{zero} = true; + } + # Get restore information $oRestoreHash{$strQueueKey}{$strFileKey}{repo_file} = $strFile; $oRestoreHash{$strQueueKey}{$strFileKey}{db_file} = $oManifest->dbPathGet($self->{strDbClusterPath}, $strFile); diff --git a/lib/pgBackRest/RestoreFile.pm b/lib/pgBackRest/RestoreFile.pm index 2f92c7240..fec7a7718 100644 --- a/lib/pgBackRest/RestoreFile.pm +++ b/lib/pgBackRest/RestoreFile.pm @@ -12,6 +12,7 @@ use Carp qw(confess); use Exporter qw(import); our @EXPORT = qw(); +use Fcntl qw(O_WRONLY O_CREAT O_TRUNC); use File::Basename qw(dirname); use File::stat qw(lstat); @@ -21,6 +22,7 @@ use pgBackRest::Common::Log; use pgBackRest::Common::String; use pgBackRest::Config::Config; use pgBackRest::File; +use pgBackRest::FileCommon; use pgBackRest::Manifest; #################################################################################################################################### @@ -77,9 +79,40 @@ sub restoreFile # Copy flag and log message my $bCopy = true; + my $bZero = false; my $strLog; - if ($oFile->exists(PATH_DB_ABSOLUTE, $$oFileHash{db_file})) + if (defined($$oFileHash{zero}) && $$oFileHash{zero}) + { + $bCopy = false; + $bZero = true; + + # Open the file truncating to zero bytes in case it already exists + my $hFile = fileOpen($$oFileHash{db_file}, O_WRONLY | O_CREAT | O_TRUNC); + + # Now truncate to the original size. This will create a sparse file which is very efficient for this use case. + truncate($hFile, $$oFileHash{size}); + + # Sync the file + $hFile->sync() + or confess &log(ERROR, "unable to sync $$oFileHash{db_file}", ERROR_FILE_SYNC); + + # Close the file + close($hFile) + or confess &log(ERROR, "unable to close $$oFileHash{db_file}", ERROR_FILE_CLOSE); + + # Fix the timestamp - not really needed in this case but good for testing + utime($$oFileHash{modification_time}, $$oFileHash{modification_time}, $$oFileHash{db_file}) + or confess &log(ERROR, "unable to set time for $$oFileHash{db_file}"); + + # Set file mode + chmod(oct($$oFileHash{mode}), $$oFileHash{db_file}) + or confess &log(ERROR, "unable to set mode for $$oFileHash{db_file}"); + + # Set file ownership + $oFile->owner(PATH_DB_ABSOLUTE, $$oFileHash{db_file}, $$oFileHash{user}, $$oFileHash{group}); + } + elsif ($oFile->exists(PATH_DB_ABSOLUTE, $$oFileHash{db_file})) { # Perform delta if requested if ($bDelta) @@ -141,10 +174,11 @@ sub restoreFile # Log the restore &log($bCopy ? INFO : DETAIL, - "restore file $$oFileHash{db_file}" . (defined($strLog) ? " - ${strLog}" : '') . + 'restore' . ($bZero ? ' zeroed' : '') . + " file $$oFileHash{db_file}" . (defined($strLog) ? " - ${strLog}" : '') . ' (' . fileSizeFormat($$oFileHash{size}) . ($lSizeTotal > 0 ? ', ' . int($lSizeCurrent * 100 / $lSizeTotal) . '%' : '') . ')' . - ($$oFileHash{size} != 0 ? " checksum $$oFileHash{checksum}" : '')); + ($$oFileHash{size} != 0 && !$bZero ? " checksum $$oFileHash{checksum}" : '')); # Return from function and log return values if any return logDebugReturn diff --git a/test/expect/backup-synthetic-001.log b/test/expect/backup-synthetic-001.log index 277998f56..ccfd92da0 100644 --- a/test/expect/backup-synthetic-001.log +++ b/test/expect/backup-synthetic-001.log @@ -43,19 +43,22 @@ full backup DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_clog, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_stat, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/pg_stat, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute @@ -64,25 +67,43 @@ full backup DEBUG: Backup->processManifest(): bCompress = false, bHardLink = false, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = full DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_tblspc, strPathType = backup:tmp DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-1], strDestinationFile = pg_data/postgresql.conf, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/postgresql.conf, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/postgresql.conf (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: backup file [TEST_PATH]/db/common/postgresql.conf (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 21, lManifestSaveSize = 3 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-1], strDestinationFile = pg_data/pg_stat/global.stat, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_stat/global.stat, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: backup file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 5, lManifestSaveSize = 3 - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/base1.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/base1.txt, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/base/base1.txt (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/32768/33000, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/32768/33000, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/32768/33000 (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 5, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/16384/17000, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/16384/17000, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/16384/17000 (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 4, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/1/12000, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/1/12000, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/1/12000 (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 4, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/32768/PG_VERSION, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/32768/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/32768/PG_VERSION (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/16384/PG_VERSION, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/16384/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/16384/PG_VERSION (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/1/PG_VERSION, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/1/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/1/PG_VERSION (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/PG_VERSION, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-1], strDestinationFile = pg_data/global/pg_control, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/global/pg_control, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 - DEBUG: Backup->processManifest=>: lSizeTotal = 8225 + DEBUG: Backup->processManifest=>: lSizeTotal = 8243 INFO: full backup size = 8KB INFO: new backup label = [BACKUP-FULL-1] DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = , lModificationTime = [undef], strDestinationFile = backup.manifest.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = backup.manifest, strSourcePathType = backup:tmp, strUser = [undef] @@ -169,7 +190,12 @@ pg_data/postgresql.conf={"file":"postgresql.conf","path":"../pg_config","type":" [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","size":[SIZE],"timestamp":[TIMESTAMP-2]} @@ -190,6 +216,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -248,19 +277,22 @@ full backup (abort backup - local) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_clog, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_stat, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/pg_stat, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute @@ -269,6 +301,9 @@ full backup (abort backup - local) DEBUG: Backup->processManifest(): bCompress = false, bHardLink = false, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = full DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp @@ -358,19 +393,22 @@ full backup (resume) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_clog, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_stat, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/pg_stat, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute @@ -380,6 +418,9 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_data, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/base, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/1, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/16384, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/32768, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/global, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/pg_clog, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/pg_stat, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp @@ -390,25 +431,43 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: Backup->processManifest(): bCompress = false, bHardLink = false, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = full DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_tblspc, strPathType = backup:tmp DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/postgresql.conf, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 21, strHash = 6721d92c9fcdf4248acff1f9a1377127d9064807 -DETAIL: checksum resumed file [TEST_PATH]/db/common/postgresql.conf (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: checksum resumed file [TEST_PATH]/db/common/postgresql.conf (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/pg_stat/global.stat, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 5, strHash = e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 - DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/base1.txt, strHashType = , strPathType = backup:tmp +DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/32768/33000, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 5, strHash = 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/32768/33000 (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/16384/17000, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 4, strHash = a3b357a3e395e43fcfb19bb13f3c1b5179279593 -DETAIL: checksum resumed file [TEST_PATH]/db/common/base/base1.txt (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/16384/17000 (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/1/12000, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 4, strHash = a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/1/12000 (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/32768/PG_VERSION, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/32768/PG_VERSION (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/16384/PG_VERSION, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/16384/PG_VERSION (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/1/PG_VERSION, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/1/PG_VERSION (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/PG_VERSION, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/global/pg_control, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 8192, strHash = 56fe5780b8dca9705e0c22032a83828860a21235 DETAIL: checksum resumed file [TEST_PATH]/db/common/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 - DEBUG: Backup->processManifest=>: lSizeTotal = 8225 + DEBUG: Backup->processManifest=>: lSizeTotal = 8243 INFO: full backup size = 8KB INFO: new backup label = [BACKUP-FULL-2] DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = , lModificationTime = [undef], strDestinationFile = backup.manifest.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = backup.manifest, strSourcePathType = backup:tmp, strUser = [undef] @@ -495,7 +554,12 @@ pg_data/postgresql.conf={"file":"postgresql.conf","path":"../pg_config","type":" [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","size":[SIZE],"timestamp":[TIMESTAMP-2]} @@ -516,6 +580,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -584,6 +651,9 @@ DETAIL: check [TEST_PATH]/db/common exists DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = deleteme, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute @@ -613,6 +683,9 @@ DETAIL: check [TEST_PATH]/db/pg_config exists DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = deleteme, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute @@ -642,22 +715,54 @@ DETAIL: set mode 0700 on [TEST_PATH]/db/common/base DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postgresql.conf, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: build level 2 paths/links + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/1, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/16384, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/32768, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: build level 3 paths/links DEBUG: Restore->process: restore in main process DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postgresql.conf, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/postgresql.conf, strHashType = , strPathType = db:absolute DEBUG: File->hashSize=>: iSize = 21, strHash = 6721d92c9fcdf4248acff1f9a1377127d9064807 -DETAIL: restore file [TEST_PATH]/db/common/postgresql.conf - exists and matches backup (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: restore file [TEST_PATH]/db/common/postgresql.conf - exists and matches backup (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/pg_stat/global.stat, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/pg_stat/global.stat, strHashType = , strPathType = db:absolute DEBUG: File->hashSize=>: iSize = 5, strHash = e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: restore file [TEST_PATH]/db/common/pg_stat/global.stat - exists and matches backup (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 - DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/base1.txt, strPathType = db:absolute +DETAIL: restore file [TEST_PATH]/db/common/pg_stat/global.stat - exists and matches backup (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/32768/33000, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/32768/33000, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 5, strHash = 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/33000 - exists and matches backup (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/16384/17000, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = , bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = [TEST_PATH]/db/common/base/base1.txt, strDestinationPathType = db:absolute, strGroup = [GROUP-1], strMode = 0600, strSourceFile = [BACKUP-FULL-2]/pg_data/base/base1.txt, strSourcePathType = backup:cluster, strUser = [USER-1] - DEBUG: File->owner(): strFile = [TEST_PATH]/db/common/base/base1.txt.backrest.tmp, strGroup = [GROUP-1], strPathType = absolute, strUser = [USER-1] - INFO: restore file [TEST_PATH]/db/common/base/base1.txt (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = , bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = [TEST_PATH]/db/common/base/16384/17000, strDestinationPathType = db:absolute, strGroup = [GROUP-1], strMode = 0600, strSourceFile = [BACKUP-FULL-2]/pg_data/base/16384/17000, strSourcePathType = backup:cluster, strUser = [USER-1] + DEBUG: File->owner(): strFile = [TEST_PATH]/db/common/base/16384/17000.backrest.tmp, strGroup = [GROUP-1], strPathType = absolute, strUser = [USER-1] + INFO: restore file [TEST_PATH]/db/common/base/16384/17000 (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/1/12000, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/1/12000, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 4, strHash = a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/base/1/12000 - exists and matches backup (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/32768/PG_VERSION, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/32768/PG_VERSION, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/PG_VERSION - exists and matches backup (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/16384/PG_VERSION, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/16384/PG_VERSION, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/16384/PG_VERSION - exists and matches backup (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/1/PG_VERSION, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/1/PG_VERSION, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/1/PG_VERSION - exists and matches backup (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/PG_VERSION, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/PG_VERSION, strHashType = , strPathType = db:absolute @@ -683,7 +788,7 @@ DETAIL: restore file [TEST_PATH]/db/common/PG_VERSION - exists and matches backu restore_command = '[BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --stanza=db archive-get %f "%p"' restore delta, backup '[BACKUP-FULL-2]' (restore all links by mapping) -> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --set=[BACKUP-FULL-2] --log-level-console=detail --link-map=pg_stat=../pg_stat --link-map=postgresql.conf=../pg_config/postgresql.conf --stanza=db restore +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --set=[BACKUP-FULL-2] --log-level-console=detail --link-map=pg_stat=../pg_stat --link-map=postgresql.conf=../pg_config/postgresql.conf --stanza=db restore ------------------------------------------------------------------------------------------------------------------------------------ INFO: restore start: --no-compress --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --delta --link-map=pg_stat=../pg_stat --link-map=postgresql.conf=../pg_config/postgresql.conf --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --repo-path=[TEST_PATH]/backrest --set=[BACKUP-FULL-2] --stanza=db INFO: restore backup set [BACKUP-FULL-2] @@ -696,9 +801,14 @@ DETAIL: check [TEST_PATH]/db/pg_config exists INFO: remove invalid files/paths/links from [TEST_PATH]/db/pg_stat INFO: remove invalid files/paths/links from [TEST_PATH]/db/common DETAIL: preserve file [TEST_PATH]/db/common/recovery.conf -DETAIL: restore file [TEST_PATH]/db/common/postgresql.conf - exists and matches backup (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 -DETAIL: restore file [TEST_PATH]/db/common/pg_stat/global.stat - exists and matches backup (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: restore file [TEST_PATH]/db/common/base/base1.txt - exists and matches backup (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/postgresql.conf - exists and matches backup (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: restore file [TEST_PATH]/db/common/pg_stat/global.stat - exists and matches backup (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/33000 - exists and matches backup (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common/base/16384/17000 - exists and matches backup (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/base/1/12000 - exists and matches backup (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/PG_VERSION - exists and matches backup (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/16384/PG_VERSION - exists and matches backup (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/1/PG_VERSION - exists and matches backup (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DETAIL: restore file [TEST_PATH]/db/common/PG_VERSION - exists and matches backup (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -710,7 +820,7 @@ DETAIL: restore file [TEST_PATH]/db/common/PG_VERSION - exists and matches backu restore_command = '[BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=detail --stanza=db archive-get %f "%p"' restore delta, backup '[BACKUP-FULL-2]', expect exit 145 (restore all links by mapping) -> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --set=[BACKUP-FULL-2] --log-level-console=warn --link-map=pg_stat=../pg_stat --link-map=postgresql.conf=../pg_stat/postgresql.conf --stanza=db restore +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --set=[BACKUP-FULL-2] --log-level-console=warn --link-map=pg_stat=../pg_stat --link-map=postgresql.conf=../pg_stat/postgresql.conf --stanza=db restore ------------------------------------------------------------------------------------------------------------------------------------ ERROR: [145]: link [TEST_PATH]/db/common/postgresql.conf (../pg_stat) references a subdirectory of or the same directory as link [TEST_PATH]/db/common/pg_stat (../pg_stat) @@ -734,9 +844,14 @@ DETAIL: check [TEST_PATH]/db/common exists DETAIL: check [TEST_PATH]/db/pg_stat exists DETAIL: check [TEST_PATH]/db/pg_config exists INFO: remove invalid files/paths/links from [TEST_PATH]/db/pg_config -DETAIL: restore file [TEST_PATH]/db/common/postgresql.conf - exists and matches backup (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: restore file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 - INFO: restore file [TEST_PATH]/db/common/base/base1.txt (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/postgresql.conf - exists and matches backup (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common/base/32768/33000 (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + INFO: restore file [TEST_PATH]/db/common/base/16384/17000 (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common/base/1/12000 (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common/base/32768/PG_VERSION (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common/base/16384/PG_VERSION (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common/base/1/PG_VERSION (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: restore file [TEST_PATH]/db/common/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -774,9 +889,14 @@ DETAIL: preserve file [TEST_PATH]/db/common/recovery.conf DETAIL: remove link [TEST_PATH]/db/common/postgresql.conf DETAIL: remove link [TEST_PATH]/db/common/pg_stat INFO: cleanup removed 2 links - INFO: restore file [TEST_PATH]/db/common/postgresql.conf (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: restore file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: restore file [TEST_PATH]/db/common/base/base1.txt - exists and matches size 4 and modification time [MODIFICATION-TIME-2] (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common/postgresql.conf (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/33000 - exists and matches size 5 and modification time [MODIFICATION-TIME-2] (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common/base/16384/17000 - exists and matches size 4 and modification time [MODIFICATION-TIME-2] (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/base/1/12000 - exists and matches size 4 and modification time [MODIFICATION-TIME-2] (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/PG_VERSION - exists and matches size 3 and modification time [MODIFICATION-TIME-2] (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/16384/PG_VERSION - exists and matches size 3 and modification time [MODIFICATION-TIME-2] (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/1/PG_VERSION - exists and matches size 3 and modification time [MODIFICATION-TIME-2] (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: restore file [TEST_PATH]/db/common/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -874,34 +994,43 @@ incr backup (add tablespace 1) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: Manifest->build: found tablespace 1 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_clog, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_stat, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 + DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = [TS_PATH-1], strPathOp = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = [TS_PATH-1]/16384, strPathOp = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute DEBUG: Backup->process: create temp backup path [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->pathCreate(): bCreateParents = true, bIgnoreExists = false, strMode = <0750>, strPath = [undef], strPathType = backup:tmp DEBUG: Backup->processManifest(): bCompress = false, bHardLink = false, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = incr DEBUG: Backup->processManifest: reference pg_data/PG_VERSION to [BACKUP-FULL-2] - DEBUG: Backup->processManifest: reference pg_data/base/base1.txt to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/1/12000 to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/1/PG_VERSION to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/16384/17000 to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/16384/PG_VERSION to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/32768/33000 to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/32768/PG_VERSION to [BACKUP-FULL-2] DEBUG: Backup->processManifest: reference pg_data/global/pg_control to [BACKUP-FULL-2] DEBUG: Backup->processManifest: reference pg_data/pg_stat/global.stat to [BACKUP-FULL-2] DEBUG: Backup->processManifest: reference pg_data/postgresql.conf to [BACKUP-FULL-2] DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/badchecksum.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/badchecksum.txt, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 61%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/1/[TS_PATH-1]/tablespace1.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f DEBUG: Backup->processManifest=>: lSizeTotal = 18 INFO: incr backup size = 18B INFO: new backup label = [BACKUP-INCR-1] @@ -994,11 +1123,16 @@ pg_tblspc/1={"path":"[TEST_PATH]/db/tablespace/ts1","tablespace-id":"1","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1015,6 +1149,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1022,6 +1159,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} [target:path:default] group="postgres" @@ -1078,7 +1216,7 @@ incr backup (resume and add tablespace 2) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: Manifest->build: found tablespace 1 @@ -1086,18 +1224,23 @@ incr backup (resume and add tablespace 2) DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_clog, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_stat, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 + DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = [TS_PATH-1], strPathOp = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/2, strParentPath = [TEST_PATH]/db/common/pg_tblspc/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts2 + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = [TS_PATH-1]/16384, strPathOp = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute + DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/2, strParentPath = [TEST_PATH]/db/common/pg_tblspc/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts2 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/tablespace/ts2, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/tablespace/ts2, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = [TS_PATH-1], strPathOp = [TEST_PATH]/db/tablespace/ts2, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = [TS_PATH-1]/32768, strPathOp = [TEST_PATH]/db/tablespace/ts2, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute WARN: aborted backup of same type exists, will be cleaned to remove invalid files and resumed DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp @@ -1107,10 +1250,16 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_tblspc/1, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_tblspc/1/[TS_PATH-1], strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 4, oManifestHashRef = [hash], strPathFileOp = pg_tblspc/1/[TS_PATH-1]/16384, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: Backup->fileNotInManifest=>: stryFile = () DEBUG: Backup->processManifest(): bCompress = false, bHardLink = false, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = incr DEBUG: Backup->processManifest: reference pg_data/PG_VERSION to [BACKUP-FULL-2] - DEBUG: Backup->processManifest: reference pg_data/base/base1.txt to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/1/12000 to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/1/PG_VERSION to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/16384/17000 to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/16384/PG_VERSION to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/32768/33000 to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/32768/PG_VERSION to [BACKUP-FULL-2] DEBUG: Backup->processManifest: reference pg_data/global/pg_control to [BACKUP-FULL-2] DEBUG: Backup->processManifest: reference pg_data/pg_stat/global.stat to [BACKUP-FULL-2] DEBUG: Backup->processManifest: reference pg_data/postgresql.conf to [BACKUP-FULL-2] @@ -1119,11 +1268,11 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp WARN: resumed backup file pg_data/badchecksum.txt should have checksum bogus but actually has checksum f927212cd08d11a42a666b2f04235398e9ceeb51. The file will be recopied and backup will continue but this may be an issue unless the backup temp path is known to be corrupted. DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/badchecksum.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/badchecksum.txt, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 44%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/2/[TS_PATH-1]/tablespace2.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - DEBUG: File->hashSize(): bCompressed = false, strFile = pg_tblspc/1/[TS_PATH-1]/tablespace1.txt, strHashType = , strPathType = backup:tmp + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 7, strHash = d85de07d6421d90aa9191c11c889bfde43680f0f -DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f +DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f DEBUG: Backup->processManifest=>: lSizeTotal = 25 INFO: incr backup size = 25B INFO: new backup label = [BACKUP-INCR-2] @@ -1217,12 +1366,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2","tablespace-id":"2","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1240,6 +1394,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1247,8 +1404,10 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1284,8 +1443,8 @@ diff backup (cannot resume - new diff) INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] WARN: aborted backup exists, but cannot be resumed (new backup-type 'diff' does not match aborted backup-type 'incr') - will be dropped and recreated INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 44%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f INFO: diff backup size = 25B INFO: new backup label = [BACKUP-DIFF-1] INFO: backup stop @@ -1350,12 +1509,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2","tablespace-id":"2","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1373,6 +1537,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1380,8 +1547,10 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1417,8 +1586,8 @@ diff backup (cannot resume - disabled) INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] WARN: aborted backup exists, but cannot be resumed (resume is disabled) - will be dropped and recreated INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 44%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f INFO: diff backup size = 25B INFO: new backup label = [BACKUP-DIFF-2] INFO: backup stop @@ -1483,12 +1652,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2","tablespace-id":"2","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1506,6 +1680,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1513,8 +1690,10 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1578,12 +1757,17 @@ restore, backup '[BACKUP-DIFF-2]', remap (remap all paths) DETAIL: check [TEST_PATH]/db/common-2 exists DETAIL: check [TEST_PATH]/db/tablespace/ts1-2 exists DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists - INFO: restore file [TEST_PATH]/db/common-2/postgresql.conf (21B, 36%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: restore file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 55%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 67%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 79%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f - INFO: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 87%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 - INFO: restore file [TEST_PATH]/db/common-2/base/base1.txt (4B, 94%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/postgresql.conf (21B, 27%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 42%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 51%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 60%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + INFO: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 67%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 73%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + INFO: restore file [TEST_PATH]/db/common-2/base/16384/17000 (4B, 78%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/base/1/12000 (4B, 84%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION (3B, 92%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: restore file [TEST_PATH]/db/common-2/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common-2/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -1609,12 +1793,17 @@ DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists INFO: remove invalid files/paths/links from [TEST_PATH]/db/tablespace/ts1-2/[TS_PATH-1] INFO: remove invalid files/paths/links from [TEST_PATH]/db/common-2 DETAIL: preserve file [TEST_PATH]/db/common-2/recovery.conf -DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 36%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 -DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 55%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 -DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt - exists and matches backup (7B, 67%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 -DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt - exists and matches backup (7B, 79%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f -DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 87%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: restore file [TEST_PATH]/db/common-2/base/base1.txt - exists and matches backup (4B, 94%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 27%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 42%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 +DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt - exists and matches backup (7B, 51%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 +DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt - exists and matches backup (7B, 60%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f +DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 67%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/33000 - exists and matches backup (5B, 73%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/17000 - exists and matches backup (4B, 78%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/12000 - exists and matches backup (4B, 84%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION - exists and matches backup (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION - exists and matches backup (3B, 92%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION - exists and matches backup (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DETAIL: restore file [TEST_PATH]/db/common-2/PG_VERSION - exists and matches backup (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common-2/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -1630,7 +1819,7 @@ incr backup (add files and remove tablespace 2) ------------------------------------------------------------------------------------------------------------------------------------ INFO: backup start: --no-compress --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast INFO: last backup label = [BACKUP-DIFF-2], version = [VERSION-1] - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt (8B, 61%) checksum e324463005236d83e6e54795dbddd20a74533bf3 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt (8B, 61%) checksum e324463005236d83e6e54795dbddd20a74533bf3 INFO: backup file [TEST_PATH]/db/common-2/base/base2.txt (5B, 100%) checksum 09b5e31766be1dba1ec27de82f975c1b6eea2a92 INFO: incr backup size = 13B INFO: new backup label = [BACKUP-INCR-3] @@ -1699,13 +1888,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-DIFF-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1722,6 +1916,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1729,6 +1926,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1765,7 +1963,7 @@ incr backup (update files) WARN: backup [BACKUP-DIFF-2] found in repository added to backup.info WARN: backup [BACKUP-INCR-3] found in repository added to backup.info INFO: last backup label = [BACKUP-INCR-3], version = [VERSION-1] - INFO: backup file [TEST_PATH]/db/common-2/base/base1.txt (8B, 100%) checksum 9a53d532e27785e681766c98516a5e93f096a501 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/17000 (8B, 100%) checksum 9a53d532e27785e681766c98516a5e93f096a501 INFO: incr backup size = 8B INFO: new backup label = [BACKUP-INCR-4] INFO: backup stop @@ -1833,13 +2031,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-DIFF-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","reference":"[BACKUP-INCR-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-INCR-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-INCR-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1856,6 +2059,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1863,6 +2069,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1898,9 +2105,9 @@ diff backup (updates since last full) INFO: backup start: --no-compress --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast --type=diff INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 28%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt (8B, 48%) checksum e324463005236d83e6e54795dbddd20a74533bf3 - INFO: backup file [TEST_PATH]/db/common-2/base/base1.txt (8B, 69%) checksum 9a53d532e27785e681766c98516a5e93f096a501 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 87%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt (8B, 48%) checksum e324463005236d83e6e54795dbddd20a74533bf3 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/17000 (8B, 69%) checksum 9a53d532e27785e681766c98516a5e93f096a501 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 87%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 INFO: backup file [TEST_PATH]/db/common-2/base/base2.txt (5B, 100%) checksum 09b5e31766be1dba1ec27de82f975c1b6eea2a92 INFO: diff backup size = 39B INFO: new backup label = [BACKUP-DIFF-3] @@ -1969,13 +2176,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1992,6 +2204,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1999,6 +2214,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2101,13 +2317,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2124,6 +2345,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2131,6 +2355,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2168,8 +2393,8 @@ diff backup (remove files during backup) INFO: backup start: --no-compress --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast --test --test-delay=1 --test-point=manifest-build=y --type=diff INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 35%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt (12B, 61%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 83%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 61%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 83%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 DETAIL: skip file removed by database: [TEST_PATH]/db/common-2/base/base2.txt INFO: diff backup size = 31B INFO: new backup label = [BACKUP-DIFF-4] @@ -2238,11 +2463,16 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2259,6 +2489,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2266,6 +2499,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2302,12 +2536,17 @@ full backup (update file) > [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --no-online --log-level-console=detail --type=full --stanza=db backup ------------------------------------------------------------------------------------------------------------------------------------ INFO: backup start: --no-compress --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast --type=full - INFO: backup file [TEST_PATH]/db/common-2/postgresql.conf (21B, 30%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt (12B, 48%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 - INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 64%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common-2/base/base1.txt (9B, 77%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 88%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: backup file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 95%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: backup file [TEST_PATH]/db/common-2/postgresql.conf (21B, 24%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 38%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 + INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 51%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/17000 (9B, 61%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 69%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 75%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: backup file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 81%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + INFO: backup file [TEST_PATH]/db/common-2/base/1/12000 (4B, 86%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: backup file [TEST_PATH]/db/common-2/base/32768/PG_VERSION (3B, 89%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/PG_VERSION (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: backup file [TEST_PATH]/db/common-2/base/1/PG_VERSION (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: backup file [TEST_PATH]/db/common-2/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: backup file [TEST_PATH]/db/common-2/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 INFO: full backup size = 8KB @@ -2376,12 +2615,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2398,6 +2642,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2405,6 +2652,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2846,13 +3094,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"cafac3c59553f2cfde41ce2e62e7662295f108c0","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2869,6 +3122,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2876,6 +3132,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2903,6 +3160,86 @@ db-version="9.3" [db:history] 1={"db-catalog-version":201306121,"db-control-version":937,"db-system-id":6156904820763115222,"db-version":"9.3"} +restore delta, remap (selective restore 16384) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=detail --db-include=16384 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + INFO: restore start: --no-compress --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-include=16384=1 --delta --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --repo-path=[TEST_PATH]/backrest --stanza=db --tablespace-map=2=[TEST_PATH]/db/tablespace/ts2-2 + INFO: restore backup set [BACKUP-DIFF-5] + INFO: remap tablespace pg_tblspc/2 directory to [TEST_PATH]/db/tablespace/ts2-2 +DETAIL: check [TEST_PATH]/db/common-2 exists +DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists + INFO: remove invalid files/paths/links from [TEST_PATH]/db/tablespace/ts2-2/[TS_PATH-1] + INFO: remove invalid files/paths/links from [TEST_PATH]/db/common-2 +DETAIL: preserve file [TEST_PATH]/db/common-2/recovery.conf +DETAIL: databases for include/exclude (1, 16384, 32768) +DETAIL: database filter: (^pg_data\/base\/32768\/)|(^pg_tblspc/2\/[TS_PATH-1]\/32768\/) +DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 22%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 34%) +DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 46%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 +DETAIL: restore file [TEST_PATH]/db/common-2/base/base2.txt - exists and matches backup (9B, 55%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/17000 - exists and matches backup (9B, 65%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) +DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 77%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 83%) +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/12000 - exists and matches backup (4B, 87%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION - exists and matches backup (3B, 90%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION - exists and matches backup (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION - exists and matches backup (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/PG_VERSION - exists and matches backup (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: wrote [TEST_PATH]/db/common-2/recovery.conf + INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) + INFO: restore file [TEST_PATH]/db/common-2/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 + INFO: restore stop + ++ supplemental file: [TEST_PATH]/db/common-2/recovery.conf +---------------------------------------------------------- +restore_command = '[BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=detail --stanza=db archive-get %f "%p"' + +restore delta, remap (selective restore 32768) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=detail --db-include=32768 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + INFO: restore start: --no-compress --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-include=32768=1 --delta --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --repo-path=[TEST_PATH]/backrest --stanza=db --tablespace-map=2=[TEST_PATH]/db/tablespace/ts2-2 + INFO: restore backup set [BACKUP-DIFF-5] + INFO: remap tablespace pg_tblspc/2 directory to [TEST_PATH]/db/tablespace/ts2-2 +DETAIL: check [TEST_PATH]/db/common-2 exists +DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists + INFO: remove invalid files/paths/links from [TEST_PATH]/db/tablespace/ts2-2/[TS_PATH-1] + INFO: remove invalid files/paths/links from [TEST_PATH]/db/common-2 +DETAIL: preserve file [TEST_PATH]/db/common-2/recovery.conf +DETAIL: databases for include/exclude (1, 16384, 32768) +DETAIL: database filter: (^pg_data\/base\/16384\/)|(^pg_tblspc/2\/[TS_PATH-1]\/16384\/) +DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 22%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 34%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 +DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 46%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 +DETAIL: restore file [TEST_PATH]/db/common-2/base/base2.txt - exists and matches backup (9B, 55%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/base/16384/17000 (9B, 65%) + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 +DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 77%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 83%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/12000 - exists and matches backup (4B, 87%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION - exists and matches backup (3B, 90%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION - exists and matches backup (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION - exists and matches backup (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/PG_VERSION - exists and matches backup (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: wrote [TEST_PATH]/db/common-2/recovery.conf + INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) + INFO: restore file [TEST_PATH]/db/common-2/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 + INFO: restore stop + ++ supplemental file: [TEST_PATH]/db/common-2/recovery.conf +---------------------------------------------------------- +restore_command = '[BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=detail --stanza=db archive-get %f "%p"' + +restore delta, remap, expect exit 155 (error on invalid id) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=warn --db-include=7777 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + ERROR: [155]: database to include '7777' does not exist + +restore delta, remap, expect exit 156 (error on system id) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=warn --db-include=1 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + ERROR: [156]: system databases (template0, postgres, etc.) are included by default + restore, remap, expect exit 148 (no tablespace remap - error when tablespace dir does not exist) > [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=detail --tablespace-map-all=../../tablespace --stanza=db restore ------------------------------------------------------------------------------------------------------------------------------------ @@ -2924,13 +3261,18 @@ restore (no tablespace remap) INFO: remap tablespace pg_tblspc/2 directory to ../../tablespace/ts2 DETAIL: check [TEST_PATH]/db/common-2/base exists DETAIL: check [TEST_PATH]/db/common-2/tablespace exists - INFO: restore file [TEST_PATH]/db/common-2/base/postgresql.conf (21B, 27%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt (12B, 42%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 - INFO: restore file [TEST_PATH]/db/common-2/base/badchecksum.txt (11B, 57%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: restore file [TEST_PATH]/db/common-2/base/base/base2.txt (9B, 68%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 - INFO: restore file [TEST_PATH]/db/common-2/base/base/base1.txt (9B, 80%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 - INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 89%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: restore file [TEST_PATH]/db/common-2/base/pg_stat/global.stat (5B, 96%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/postgresql.conf (21B, 22%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 34%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 + INFO: restore file [TEST_PATH]/db/common-2/base/badchecksum.txt (11B, 46%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 + INFO: restore file [TEST_PATH]/db/common-2/base/base/base2.txt (9B, 55%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 + INFO: restore file [TEST_PATH]/db/common-2/base/base/16384/17000 (9B, 65%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 + INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: restore file [TEST_PATH]/db/common-2/base/pg_stat/global.stat (5B, 77%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/base/32768/33000 (5B, 83%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + INFO: restore file [TEST_PATH]/db/common-2/base/base/1/12000 (4B, 87%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/base/base/32768/PG_VERSION (3B, 90%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/base/16384/PG_VERSION (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/base/1/PG_VERSION (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: restore file [TEST_PATH]/db/common-2/base/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common-2/base/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) diff --git a/test/expect/backup-synthetic-002.log b/test/expect/backup-synthetic-002.log index 87e009ff8..1a2a5edb4 100644 --- a/test/expect/backup-synthetic-002.log +++ b/test/expect/backup-synthetic-002.log @@ -43,19 +43,22 @@ full backup DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_clog, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_stat, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/pg_stat, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute @@ -64,25 +67,43 @@ full backup DEBUG: Backup->processManifest(): bCompress = false, bHardLink = true, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = full DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_tblspc, strPathType = backup:tmp DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-1], strDestinationFile = pg_data/postgresql.conf, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/postgresql.conf, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/postgresql.conf (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: backup file [TEST_PATH]/db/common/postgresql.conf (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 21, lManifestSaveSize = 3 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-1], strDestinationFile = pg_data/pg_stat/global.stat, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_stat/global.stat, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: backup file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 5, lManifestSaveSize = 3 - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/base1.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/base1.txt, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/base/base1.txt (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/32768/33000, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/32768/33000, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/32768/33000 (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 5, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/16384/17000, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/16384/17000, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/16384/17000 (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 4, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/1/12000, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/1/12000, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/1/12000 (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 4, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/32768/PG_VERSION, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/32768/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/32768/PG_VERSION (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/16384/PG_VERSION, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/16384/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/16384/PG_VERSION (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/1/PG_VERSION, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/1/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/1/PG_VERSION (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/PG_VERSION, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-1], strDestinationFile = pg_data/global/pg_control, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/global/pg_control, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 - DEBUG: Backup->processManifest=>: lSizeTotal = 8225 + DEBUG: Backup->processManifest=>: lSizeTotal = 8243 INFO: full backup size = 8KB INFO: new backup label = [BACKUP-FULL-1] DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = , lModificationTime = [undef], strDestinationFile = backup.manifest.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = backup.manifest, strSourcePathType = backup:tmp, strUser = [undef] @@ -170,7 +191,12 @@ pg_data/postgresql.conf={"file":"postgresql.conf","path":"../pg_config","type":" [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","size":[SIZE],"timestamp":[TIMESTAMP-2]} @@ -191,6 +217,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -241,19 +270,22 @@ full backup (resume) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_clog, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_stat, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/pg_stat, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute @@ -263,6 +295,9 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_data, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/base, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/1, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/16384, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/32768, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/global, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/pg_clog, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/pg_stat, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp @@ -273,25 +308,43 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: Backup->processManifest(): bCompress = false, bHardLink = true, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = full DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_tblspc, strPathType = backup:tmp DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/postgresql.conf, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 21, strHash = 6721d92c9fcdf4248acff1f9a1377127d9064807 -DETAIL: checksum resumed file [TEST_PATH]/db/common/postgresql.conf (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: checksum resumed file [TEST_PATH]/db/common/postgresql.conf (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/pg_stat/global.stat, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 5, strHash = e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 - DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/base1.txt, strHashType = , strPathType = backup:tmp +DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/32768/33000, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 5, strHash = 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/32768/33000 (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/16384/17000, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 4, strHash = a3b357a3e395e43fcfb19bb13f3c1b5179279593 -DETAIL: checksum resumed file [TEST_PATH]/db/common/base/base1.txt (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/16384/17000 (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/1/12000, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 4, strHash = a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/1/12000 (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/32768/PG_VERSION, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/32768/PG_VERSION (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/16384/PG_VERSION, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/16384/PG_VERSION (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/1/PG_VERSION, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/1/PG_VERSION (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/PG_VERSION, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/global/pg_control, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 8192, strHash = 56fe5780b8dca9705e0c22032a83828860a21235 DETAIL: checksum resumed file [TEST_PATH]/db/common/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 - DEBUG: Backup->processManifest=>: lSizeTotal = 8225 + DEBUG: Backup->processManifest=>: lSizeTotal = 8243 INFO: full backup size = 8KB INFO: new backup label = [BACKUP-FULL-2] DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = , lModificationTime = [undef], strDestinationFile = backup.manifest.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = backup.manifest, strSourcePathType = backup:tmp, strUser = [undef] @@ -379,7 +432,12 @@ pg_data/postgresql.conf={"file":"postgresql.conf","path":"../pg_config","type":" [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","size":[SIZE],"timestamp":[TIMESTAMP-2]} @@ -400,6 +458,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -461,6 +522,9 @@ DETAIL: check [TEST_PATH]/db/common exists DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = deleteme, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute @@ -490,6 +554,9 @@ DETAIL: check [TEST_PATH]/db/pg_config exists DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = deleteme, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute @@ -519,22 +586,54 @@ DETAIL: set mode 0700 on [TEST_PATH]/db/common/base DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postgresql.conf, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: build level 2 paths/links + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/1, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/16384, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/32768, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: build level 3 paths/links DEBUG: Restore->process: restore in main process DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postgresql.conf, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/postgresql.conf, strHashType = , strPathType = db:absolute DEBUG: File->hashSize=>: iSize = 21, strHash = 6721d92c9fcdf4248acff1f9a1377127d9064807 -DETAIL: restore file [TEST_PATH]/db/common/postgresql.conf - exists and matches backup (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: restore file [TEST_PATH]/db/common/postgresql.conf - exists and matches backup (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/pg_stat/global.stat, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/pg_stat/global.stat, strHashType = , strPathType = db:absolute DEBUG: File->hashSize=>: iSize = 5, strHash = e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: restore file [TEST_PATH]/db/common/pg_stat/global.stat - exists and matches backup (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 - DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/base1.txt, strPathType = db:absolute +DETAIL: restore file [TEST_PATH]/db/common/pg_stat/global.stat - exists and matches backup (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/32768/33000, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/32768/33000, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 5, strHash = 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/33000 - exists and matches backup (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/16384/17000, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = , bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = [TEST_PATH]/db/common/base/base1.txt, strDestinationPathType = db:absolute, strGroup = [GROUP-1], strMode = 0600, strSourceFile = [BACKUP-FULL-2]/pg_data/base/base1.txt, strSourcePathType = backup:cluster, strUser = [USER-1] - DEBUG: File->owner(): strFile = [TEST_PATH]/db/common/base/base1.txt.backrest.tmp, strGroup = [GROUP-1], strPathType = absolute, strUser = [USER-1] - INFO: restore file [TEST_PATH]/db/common/base/base1.txt (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = , bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = [TEST_PATH]/db/common/base/16384/17000, strDestinationPathType = db:absolute, strGroup = [GROUP-1], strMode = 0600, strSourceFile = [BACKUP-FULL-2]/pg_data/base/16384/17000, strSourcePathType = backup:cluster, strUser = [USER-1] + DEBUG: File->owner(): strFile = [TEST_PATH]/db/common/base/16384/17000.backrest.tmp, strGroup = [GROUP-1], strPathType = absolute, strUser = [USER-1] + INFO: restore file [TEST_PATH]/db/common/base/16384/17000 (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/1/12000, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/1/12000, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 4, strHash = a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/base/1/12000 - exists and matches backup (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/32768/PG_VERSION, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/32768/PG_VERSION, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/PG_VERSION - exists and matches backup (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/16384/PG_VERSION, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/16384/PG_VERSION, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/16384/PG_VERSION - exists and matches backup (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/1/PG_VERSION, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/1/PG_VERSION, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/1/PG_VERSION - exists and matches backup (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/PG_VERSION, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/PG_VERSION, strHashType = , strPathType = db:absolute @@ -586,9 +685,14 @@ DETAIL: preserve file [TEST_PATH]/db/common/recovery.conf DETAIL: remove link [TEST_PATH]/db/common/postgresql.conf DETAIL: remove link [TEST_PATH]/db/common/pg_stat INFO: cleanup removed 2 links - INFO: restore file [TEST_PATH]/db/common/postgresql.conf (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: restore file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: restore file [TEST_PATH]/db/common/base/base1.txt - exists and matches size 4 and modification time [MODIFICATION-TIME-2] (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common/postgresql.conf (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/33000 - exists and matches size 5 and modification time [MODIFICATION-TIME-2] (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common/base/16384/17000 - exists and matches size 4 and modification time [MODIFICATION-TIME-2] (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/base/1/12000 - exists and matches size 4 and modification time [MODIFICATION-TIME-2] (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/PG_VERSION - exists and matches size 3 and modification time [MODIFICATION-TIME-2] (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/16384/PG_VERSION - exists and matches size 3 and modification time [MODIFICATION-TIME-2] (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/1/PG_VERSION - exists and matches size 3 and modification time [MODIFICATION-TIME-2] (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: restore file [TEST_PATH]/db/common/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -686,27 +790,34 @@ incr backup (add tablespace 1) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: Manifest->build: found tablespace 1 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_clog, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_stat, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 + DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = [TS_PATH-1], strPathOp = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = [TS_PATH-1]/16384, strPathOp = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute DEBUG: Backup->process: create temp backup path [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->pathCreate(): bCreateParents = true, bIgnoreExists = false, strMode = <0750>, strPath = [undef], strPathType = backup:tmp DEBUG: Backup->processManifest(): bCompress = false, bHardLink = true, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = incr DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp @@ -714,10 +825,21 @@ incr backup (add tablespace 1) DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/1, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/1/[TS_PATH-1], strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/1/[TS_PATH-1]/16384, strPathType = backup:tmp DEBUG: Backup->processManifest: hardlink pg_data/PG_VERSION to [BACKUP-FULL-2] DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/PG_VERSION, strSourcePathType = backup:cluster - DEBUG: Backup->processManifest: hardlink pg_data/base/base1.txt to [BACKUP-FULL-2] - DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/base1.txt, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/base1.txt, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/1/12000 to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/1/12000, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/1/12000, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/1/PG_VERSION to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/1/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/1/PG_VERSION, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/16384/17000 to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/16384/17000, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/16384/17000, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/16384/PG_VERSION to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/16384/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/16384/PG_VERSION, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/32768/33000 to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/32768/33000, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/32768/33000, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/32768/PG_VERSION to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/32768/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/32768/PG_VERSION, strSourcePathType = backup:cluster DEBUG: Backup->processManifest: hardlink pg_data/global/pg_control to [BACKUP-FULL-2] DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/global/pg_control, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/global/pg_control, strSourcePathType = backup:cluster DEBUG: Backup->processManifest: hardlink pg_data/pg_stat/global.stat to [BACKUP-FULL-2] @@ -726,8 +848,8 @@ incr backup (add tablespace 1) DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/postgresql.conf, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/postgresql.conf, strSourcePathType = backup:cluster DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/badchecksum.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/badchecksum.txt, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 61%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/1/[TS_PATH-1]/tablespace1.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f DEBUG: Backup->processManifest=>: lSizeTotal = 18 INFO: incr backup size = 18B INFO: new backup label = [BACKUP-INCR-1] @@ -821,11 +943,16 @@ pg_tblspc/1={"path":"[TEST_PATH]/db/tablespace/ts1","tablespace-id":"1","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -842,6 +969,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -849,6 +979,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} [target:path:default] group="postgres" @@ -905,7 +1036,7 @@ incr backup (resume and add tablespace 2) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: Manifest->build: found tablespace 1 @@ -913,18 +1044,23 @@ incr backup (resume and add tablespace 2) DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_clog, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_stat, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 + DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = [TS_PATH-1], strPathOp = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/2, strParentPath = [TEST_PATH]/db/common/pg_tblspc/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts2 + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = [TS_PATH-1]/16384, strPathOp = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute + DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/2, strParentPath = [TEST_PATH]/db/common/pg_tblspc/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts2 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/tablespace/ts2, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/tablespace/ts2, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = [TS_PATH-1], strPathOp = [TEST_PATH]/db/tablespace/ts2, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = [TS_PATH-1]/32768, strPathOp = [TEST_PATH]/db/tablespace/ts2, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute WARN: aborted backup of same type exists, will be cleaned to remove invalid files and resumed DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp @@ -932,6 +1068,9 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_data, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/base, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/1, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/16384, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/32768, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/global, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/pg_clog, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/pg_stat, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp @@ -939,15 +1078,24 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_tblspc/1, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_tblspc/1/[TS_PATH-1], strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp - DEBUG: Backup->fileNotInManifest=>: stryFile = (pg_data/PG_VERSION, pg_data/base/base1.txt, pg_data/global/pg_control, pg_data/pg_stat/global.stat, pg_data/postgresql.conf) + DEBUG: File->manifestRecurse(): iDepth = 4, oManifestHashRef = [hash], strPathFileOp = pg_tblspc/1/[TS_PATH-1]/16384, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: Backup->fileNotInManifest=>: stryFile = (pg_data/PG_VERSION, pg_data/base/1/12000, pg_data/base/1/PG_VERSION, pg_data/base/16384/17000, pg_data/base/16384/PG_VERSION, pg_data/base/32768/33000, pg_data/base/32768/PG_VERSION, pg_data/global/pg_control, pg_data/pg_stat/global.stat, pg_data/postgresql.conf) DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/postgresql.conf DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/pg_stat/global.stat DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/global/pg_control - DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/base1.txt + DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/32768/PG_VERSION + DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/32768/33000 + DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/16384/PG_VERSION + DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/16384/17000 + DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/1/PG_VERSION + DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/1/12000 DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/PG_VERSION DEBUG: Backup->processManifest(): bCompress = false, bHardLink = true, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = incr DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp @@ -955,12 +1103,24 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/1, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/1/[TS_PATH-1], strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/1/[TS_PATH-1]/16384, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/2, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/2/[TS_PATH-1], strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/2/[TS_PATH-1]/32768, strPathType = backup:tmp DEBUG: Backup->processManifest: hardlink pg_data/PG_VERSION to [BACKUP-FULL-2] DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/PG_VERSION, strSourcePathType = backup:cluster - DEBUG: Backup->processManifest: hardlink pg_data/base/base1.txt to [BACKUP-FULL-2] - DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/base1.txt, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/base1.txt, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/1/12000 to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/1/12000, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/1/12000, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/1/PG_VERSION to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/1/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/1/PG_VERSION, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/16384/17000 to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/16384/17000, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/16384/17000, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/16384/PG_VERSION to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/16384/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/16384/PG_VERSION, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/32768/33000 to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/32768/33000, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/32768/33000, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/32768/PG_VERSION to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/32768/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/32768/PG_VERSION, strSourcePathType = backup:cluster DEBUG: Backup->processManifest: hardlink pg_data/global/pg_control to [BACKUP-FULL-2] DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/global/pg_control, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/global/pg_control, strSourcePathType = backup:cluster DEBUG: Backup->processManifest: hardlink pg_data/pg_stat/global.stat to [BACKUP-FULL-2] @@ -972,11 +1132,11 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp WARN: resumed backup file pg_data/badchecksum.txt should have checksum bogus but actually has checksum f927212cd08d11a42a666b2f04235398e9ceeb51. The file will be recopied and backup will continue but this may be an issue unless the backup temp path is known to be corrupted. DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/badchecksum.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/badchecksum.txt, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 44%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/2/[TS_PATH-1]/tablespace2.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - DEBUG: File->hashSize(): bCompressed = false, strFile = pg_tblspc/1/[TS_PATH-1]/tablespace1.txt, strHashType = , strPathType = backup:tmp + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 7, strHash = d85de07d6421d90aa9191c11c889bfde43680f0f -DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f +DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f DEBUG: Backup->processManifest=>: lSizeTotal = 25 INFO: incr backup size = 25B INFO: new backup label = [BACKUP-INCR-2] @@ -1071,12 +1231,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2","tablespace-id":"2","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1094,6 +1259,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1101,8 +1269,10 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1138,8 +1308,8 @@ diff backup (cannot resume - new diff) INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] WARN: aborted backup exists, but cannot be resumed (new backup-type 'diff' does not match aborted backup-type 'incr') - will be dropped and recreated INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 44%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f INFO: diff backup size = 25B INFO: new backup label = [BACKUP-DIFF-1] INFO: backup stop @@ -1205,12 +1375,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2","tablespace-id":"2","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1228,6 +1403,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1235,8 +1413,10 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1272,8 +1452,8 @@ diff backup (cannot resume - disabled) INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] WARN: aborted backup exists, but cannot be resumed (resume is disabled) - will be dropped and recreated INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 44%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f INFO: diff backup size = 25B INFO: new backup label = [BACKUP-DIFF-2] INFO: backup stop @@ -1339,12 +1519,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2","tablespace-id":"2","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1362,6 +1547,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1369,8 +1557,10 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1434,12 +1624,17 @@ restore, backup '[BACKUP-DIFF-2]', remap (remap all paths) DETAIL: check [TEST_PATH]/db/common-2 exists DETAIL: check [TEST_PATH]/db/tablespace/ts1-2 exists DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists - INFO: restore file [TEST_PATH]/db/common-2/postgresql.conf (21B, 36%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: restore file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 55%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 67%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 79%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f - INFO: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 87%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 - INFO: restore file [TEST_PATH]/db/common-2/base/base1.txt (4B, 94%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/postgresql.conf (21B, 27%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 42%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 51%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 60%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + INFO: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 67%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 73%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + INFO: restore file [TEST_PATH]/db/common-2/base/16384/17000 (4B, 78%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/base/1/12000 (4B, 84%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION (3B, 92%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: restore file [TEST_PATH]/db/common-2/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common-2/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -1465,12 +1660,17 @@ DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists INFO: remove invalid files/paths/links from [TEST_PATH]/db/tablespace/ts1-2/[TS_PATH-1] INFO: remove invalid files/paths/links from [TEST_PATH]/db/common-2 DETAIL: preserve file [TEST_PATH]/db/common-2/recovery.conf -DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 36%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 -DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 55%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 -DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt - exists and matches backup (7B, 67%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 -DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt - exists and matches backup (7B, 79%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f -DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 87%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: restore file [TEST_PATH]/db/common-2/base/base1.txt - exists and matches backup (4B, 94%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 27%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 42%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 +DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt - exists and matches backup (7B, 51%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 +DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt - exists and matches backup (7B, 60%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f +DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 67%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/33000 - exists and matches backup (5B, 73%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/17000 - exists and matches backup (4B, 78%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/12000 - exists and matches backup (4B, 84%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION - exists and matches backup (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION - exists and matches backup (3B, 92%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION - exists and matches backup (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DETAIL: restore file [TEST_PATH]/db/common-2/PG_VERSION - exists and matches backup (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common-2/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -1486,7 +1686,7 @@ incr backup (add files and remove tablespace 2) ------------------------------------------------------------------------------------------------------------------------------------ INFO: backup start: --no-compress --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --hardlink --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast INFO: last backup label = [BACKUP-DIFF-2], version = [VERSION-1] - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt (8B, 61%) checksum e324463005236d83e6e54795dbddd20a74533bf3 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt (8B, 61%) checksum e324463005236d83e6e54795dbddd20a74533bf3 INFO: backup file [TEST_PATH]/db/common-2/base/base2.txt (5B, 100%) checksum 09b5e31766be1dba1ec27de82f975c1b6eea2a92 INFO: incr backup size = 13B INFO: new backup label = [BACKUP-INCR-3] @@ -1556,13 +1756,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-DIFF-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1579,6 +1784,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1586,6 +1794,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1619,7 +1828,7 @@ incr backup (update files) ------------------------------------------------------------------------------------------------------------------------------------ INFO: backup start: --no-compress --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --hardlink --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast INFO: last backup label = [BACKUP-INCR-3], version = [VERSION-1] - INFO: backup file [TEST_PATH]/db/common-2/base/base1.txt (8B, 100%) checksum 9a53d532e27785e681766c98516a5e93f096a501 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/17000 (8B, 100%) checksum 9a53d532e27785e681766c98516a5e93f096a501 INFO: incr backup size = 8B INFO: new backup label = [BACKUP-INCR-4] INFO: backup stop @@ -1688,13 +1897,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-DIFF-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","reference":"[BACKUP-INCR-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-INCR-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-INCR-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1711,6 +1925,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1718,6 +1935,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1753,9 +1971,9 @@ diff backup (updates since last full) INFO: backup start: --no-compress --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --hardlink --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast --type=diff INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 28%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt (8B, 48%) checksum e324463005236d83e6e54795dbddd20a74533bf3 - INFO: backup file [TEST_PATH]/db/common-2/base/base1.txt (8B, 69%) checksum 9a53d532e27785e681766c98516a5e93f096a501 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 87%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt (8B, 48%) checksum e324463005236d83e6e54795dbddd20a74533bf3 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/17000 (8B, 69%) checksum 9a53d532e27785e681766c98516a5e93f096a501 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 87%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 INFO: backup file [TEST_PATH]/db/common-2/base/base2.txt (5B, 100%) checksum 09b5e31766be1dba1ec27de82f975c1b6eea2a92 INFO: diff backup size = 39B INFO: new backup label = [BACKUP-DIFF-3] @@ -1825,13 +2043,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1848,6 +2071,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1855,6 +2081,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1958,13 +2185,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1981,6 +2213,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1988,6 +2223,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2025,8 +2261,8 @@ diff backup (remove files during backup) INFO: backup start: --no-compress --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --hardlink --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast --test --test-delay=1 --test-point=manifest-build=y --type=diff INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 35%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt (12B, 61%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 83%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 61%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 83%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 DETAIL: skip file removed by database: [TEST_PATH]/db/common-2/base/base2.txt INFO: diff backup size = 31B INFO: new backup label = [BACKUP-DIFF-4] @@ -2096,11 +2332,16 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2117,6 +2358,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2124,6 +2368,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2160,12 +2405,17 @@ full backup (update file) > [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --no-online --log-level-console=detail --type=full --stanza=db backup ------------------------------------------------------------------------------------------------------------------------------------ INFO: backup start: --no-compress --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --hardlink --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast --type=full - INFO: backup file [TEST_PATH]/db/common-2/postgresql.conf (21B, 30%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt (12B, 48%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 - INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 64%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common-2/base/base1.txt (9B, 77%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 88%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: backup file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 95%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: backup file [TEST_PATH]/db/common-2/postgresql.conf (21B, 24%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 38%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 + INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 51%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/17000 (9B, 61%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 69%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 75%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: backup file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 81%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + INFO: backup file [TEST_PATH]/db/common-2/base/1/12000 (4B, 86%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: backup file [TEST_PATH]/db/common-2/base/32768/PG_VERSION (3B, 89%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/PG_VERSION (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: backup file [TEST_PATH]/db/common-2/base/1/PG_VERSION (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: backup file [TEST_PATH]/db/common-2/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: backup file [TEST_PATH]/db/common-2/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 INFO: full backup size = 8KB @@ -2235,12 +2485,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2257,6 +2512,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2264,6 +2522,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2706,13 +2965,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"cafac3c59553f2cfde41ce2e62e7662295f108c0","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2729,6 +2993,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2736,6 +3003,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2763,6 +3031,86 @@ db-version="9.3" [db:history] 1={"db-catalog-version":201306121,"db-control-version":937,"db-system-id":6156904820763115222,"db-version":"9.3"} +restore delta, remap (selective restore 16384) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=detail --db-include=16384 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + INFO: restore start: --no-compress --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-include=16384=1 --delta --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --repo-path=[TEST_PATH]/backrest --stanza=db --tablespace-map=2=[TEST_PATH]/db/tablespace/ts2-2 + INFO: restore backup set [BACKUP-DIFF-5] + INFO: remap tablespace pg_tblspc/2 directory to [TEST_PATH]/db/tablespace/ts2-2 +DETAIL: check [TEST_PATH]/db/common-2 exists +DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists + INFO: remove invalid files/paths/links from [TEST_PATH]/db/tablespace/ts2-2/[TS_PATH-1] + INFO: remove invalid files/paths/links from [TEST_PATH]/db/common-2 +DETAIL: preserve file [TEST_PATH]/db/common-2/recovery.conf +DETAIL: databases for include/exclude (1, 16384, 32768) +DETAIL: database filter: (^pg_data\/base\/32768\/)|(^pg_tblspc/2\/[TS_PATH-1]\/32768\/) +DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 22%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 34%) +DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 46%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 +DETAIL: restore file [TEST_PATH]/db/common-2/base/base2.txt - exists and matches backup (9B, 55%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/17000 - exists and matches backup (9B, 65%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) +DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 77%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 83%) +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/12000 - exists and matches backup (4B, 87%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION - exists and matches backup (3B, 90%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION - exists and matches backup (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION - exists and matches backup (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/PG_VERSION - exists and matches backup (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: wrote [TEST_PATH]/db/common-2/recovery.conf + INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) + INFO: restore file [TEST_PATH]/db/common-2/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 + INFO: restore stop + ++ supplemental file: [TEST_PATH]/db/common-2/recovery.conf +---------------------------------------------------------- +restore_command = '[BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=detail --stanza=db archive-get %f "%p"' + +restore delta, remap (selective restore 32768) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=detail --db-include=32768 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + INFO: restore start: --no-compress --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-include=32768=1 --delta --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --repo-path=[TEST_PATH]/backrest --stanza=db --tablespace-map=2=[TEST_PATH]/db/tablespace/ts2-2 + INFO: restore backup set [BACKUP-DIFF-5] + INFO: remap tablespace pg_tblspc/2 directory to [TEST_PATH]/db/tablespace/ts2-2 +DETAIL: check [TEST_PATH]/db/common-2 exists +DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists + INFO: remove invalid files/paths/links from [TEST_PATH]/db/tablespace/ts2-2/[TS_PATH-1] + INFO: remove invalid files/paths/links from [TEST_PATH]/db/common-2 +DETAIL: preserve file [TEST_PATH]/db/common-2/recovery.conf +DETAIL: databases for include/exclude (1, 16384, 32768) +DETAIL: database filter: (^pg_data\/base\/16384\/)|(^pg_tblspc/2\/[TS_PATH-1]\/16384\/) +DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 22%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 34%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 +DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 46%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 +DETAIL: restore file [TEST_PATH]/db/common-2/base/base2.txt - exists and matches backup (9B, 55%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/base/16384/17000 (9B, 65%) + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 +DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 77%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 83%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/12000 - exists and matches backup (4B, 87%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION - exists and matches backup (3B, 90%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION - exists and matches backup (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION - exists and matches backup (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/PG_VERSION - exists and matches backup (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: wrote [TEST_PATH]/db/common-2/recovery.conf + INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) + INFO: restore file [TEST_PATH]/db/common-2/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 + INFO: restore stop + ++ supplemental file: [TEST_PATH]/db/common-2/recovery.conf +---------------------------------------------------------- +restore_command = '[BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=detail --stanza=db archive-get %f "%p"' + +restore delta, remap, expect exit 155 (error on invalid id) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=warn --db-include=7777 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + ERROR: [155]: database to include '7777' does not exist + +restore delta, remap, expect exit 156 (error on system id) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=warn --db-include=1 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + ERROR: [156]: system databases (template0, postgres, etc.) are included by default + restore, remap, expect exit 148 (no tablespace remap - error when tablespace dir does not exist) > [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=detail --tablespace-map-all=../../tablespace --stanza=db restore ------------------------------------------------------------------------------------------------------------------------------------ @@ -2784,13 +3132,18 @@ restore (no tablespace remap) INFO: remap tablespace pg_tblspc/2 directory to ../../tablespace/ts2 DETAIL: check [TEST_PATH]/db/common-2/base exists DETAIL: check [TEST_PATH]/db/common-2/tablespace exists - INFO: restore file [TEST_PATH]/db/common-2/base/postgresql.conf (21B, 27%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt (12B, 42%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 - INFO: restore file [TEST_PATH]/db/common-2/base/badchecksum.txt (11B, 57%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: restore file [TEST_PATH]/db/common-2/base/base/base2.txt (9B, 68%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 - INFO: restore file [TEST_PATH]/db/common-2/base/base/base1.txt (9B, 80%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 - INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 89%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: restore file [TEST_PATH]/db/common-2/base/pg_stat/global.stat (5B, 96%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/postgresql.conf (21B, 22%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 34%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 + INFO: restore file [TEST_PATH]/db/common-2/base/badchecksum.txt (11B, 46%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 + INFO: restore file [TEST_PATH]/db/common-2/base/base/base2.txt (9B, 55%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 + INFO: restore file [TEST_PATH]/db/common-2/base/base/16384/17000 (9B, 65%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 + INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: restore file [TEST_PATH]/db/common-2/base/pg_stat/global.stat (5B, 77%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/base/32768/33000 (5B, 83%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + INFO: restore file [TEST_PATH]/db/common-2/base/base/1/12000 (4B, 87%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/base/base/32768/PG_VERSION (3B, 90%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/base/16384/PG_VERSION (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/base/1/PG_VERSION (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: restore file [TEST_PATH]/db/common-2/base/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common-2/base/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) diff --git a/test/expect/backup-synthetic-003.log b/test/expect/backup-synthetic-003.log index 3976c6b0f..af348b009 100644 --- a/test/expect/backup-synthetic-003.log +++ b/test/expect/backup-synthetic-003.log @@ -43,19 +43,22 @@ full backup DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_clog, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_stat, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/pg_stat, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute @@ -64,25 +67,43 @@ full backup DEBUG: Backup->processManifest(): bCompress = true, bHardLink = false, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = full DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_tblspc, strPathType = backup:tmp DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-1], strDestinationFile = pg_data/postgresql.conf.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/postgresql.conf, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/postgresql.conf (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: backup file [TEST_PATH]/db/common/postgresql.conf (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 21, lManifestSaveSize = 3 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-1], strDestinationFile = pg_data/pg_stat/global.stat.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_stat/global.stat, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: backup file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 5, lManifestSaveSize = 3 - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/base1.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/base1.txt, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/base/base1.txt (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/32768/33000.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/32768/33000, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/32768/33000 (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 5, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/16384/17000.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/16384/17000, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/16384/17000 (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 4, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/1/12000.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/1/12000, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/1/12000 (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 4, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/32768/PG_VERSION.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/32768/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/32768/PG_VERSION (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/16384/PG_VERSION.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/16384/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/16384/PG_VERSION (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/1/PG_VERSION.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/1/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/1/PG_VERSION (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/PG_VERSION.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-1], strDestinationFile = pg_data/global/pg_control.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/global/pg_control, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 - DEBUG: Backup->processManifest=>: lSizeTotal = 8225 + DEBUG: Backup->processManifest=>: lSizeTotal = 8243 INFO: full backup size = 8KB INFO: new backup label = [BACKUP-FULL-1] DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = , lModificationTime = [undef], strDestinationFile = backup.manifest.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = backup.manifest, strSourcePathType = backup:tmp, strUser = [undef] @@ -168,7 +189,12 @@ pg_data/postgresql.conf={"file":"postgresql.conf","path":"../pg_config","type":" [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} @@ -189,6 +215,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -239,19 +268,22 @@ full backup (resume) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_clog, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_stat, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/pg_stat, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute @@ -261,6 +293,9 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_data, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/base, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/1, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/16384, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/32768, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/global, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/pg_clog, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/pg_stat, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp @@ -271,25 +306,43 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: Backup->processManifest(): bCompress = true, bHardLink = false, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = full DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_tblspc, strPathType = backup:tmp DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/postgresql.conf.gz, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 21, strHash = 6721d92c9fcdf4248acff1f9a1377127d9064807 -DETAIL: checksum resumed file [TEST_PATH]/db/common/postgresql.conf (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: checksum resumed file [TEST_PATH]/db/common/postgresql.conf (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/pg_stat/global.stat.gz, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 5, strHash = e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 - DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/base1.txt.gz, strHashType = , strPathType = backup:tmp +DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/32768/33000.gz, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 5, strHash = 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/32768/33000 (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/16384/17000.gz, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 4, strHash = a3b357a3e395e43fcfb19bb13f3c1b5179279593 -DETAIL: checksum resumed file [TEST_PATH]/db/common/base/base1.txt (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/16384/17000 (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/1/12000.gz, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 4, strHash = a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/1/12000 (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/32768/PG_VERSION.gz, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/32768/PG_VERSION (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/16384/PG_VERSION.gz, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/16384/PG_VERSION (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/1/PG_VERSION.gz, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/1/PG_VERSION (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/PG_VERSION.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/global/pg_control.gz, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 8192, strHash = 56fe5780b8dca9705e0c22032a83828860a21235 DETAIL: checksum resumed file [TEST_PATH]/db/common/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 - DEBUG: Backup->processManifest=>: lSizeTotal = 8225 + DEBUG: Backup->processManifest=>: lSizeTotal = 8243 INFO: full backup size = 8KB INFO: new backup label = [BACKUP-FULL-2] DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = , lModificationTime = [undef], strDestinationFile = backup.manifest.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = backup.manifest, strSourcePathType = backup:tmp, strUser = [undef] @@ -375,7 +428,12 @@ pg_data/postgresql.conf={"file":"postgresql.conf","path":"../pg_config","type":" [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} @@ -396,6 +454,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -457,6 +518,9 @@ DETAIL: check [TEST_PATH]/db/common exists DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = deleteme, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute @@ -486,6 +550,9 @@ DETAIL: check [TEST_PATH]/db/pg_config exists DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = deleteme, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute @@ -515,22 +582,54 @@ DETAIL: set mode 0700 on [TEST_PATH]/db/common/base DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postgresql.conf, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: build level 2 paths/links + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/1, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/16384, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/32768, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: build level 3 paths/links DEBUG: Restore->process: restore in main process DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postgresql.conf, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/postgresql.conf, strHashType = , strPathType = db:absolute DEBUG: File->hashSize=>: iSize = 21, strHash = 6721d92c9fcdf4248acff1f9a1377127d9064807 -DETAIL: restore file [TEST_PATH]/db/common/postgresql.conf - exists and matches backup (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: restore file [TEST_PATH]/db/common/postgresql.conf - exists and matches backup (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/pg_stat/global.stat, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/pg_stat/global.stat, strHashType = , strPathType = db:absolute DEBUG: File->hashSize=>: iSize = 5, strHash = e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: restore file [TEST_PATH]/db/common/pg_stat/global.stat - exists and matches backup (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 - DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/base1.txt, strPathType = db:absolute +DETAIL: restore file [TEST_PATH]/db/common/pg_stat/global.stat - exists and matches backup (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/32768/33000, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/32768/33000, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 5, strHash = 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/33000 - exists and matches backup (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/16384/17000, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = , bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = true, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = [TEST_PATH]/db/common/base/base1.txt, strDestinationPathType = db:absolute, strGroup = [GROUP-1], strMode = 0600, strSourceFile = [BACKUP-FULL-2]/pg_data/base/base1.txt.gz, strSourcePathType = backup:cluster, strUser = [USER-1] - DEBUG: File->owner(): strFile = [TEST_PATH]/db/common/base/base1.txt.backrest.tmp, strGroup = [GROUP-1], strPathType = absolute, strUser = [USER-1] - INFO: restore file [TEST_PATH]/db/common/base/base1.txt (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = , bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = true, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = [TEST_PATH]/db/common/base/16384/17000, strDestinationPathType = db:absolute, strGroup = [GROUP-1], strMode = 0600, strSourceFile = [BACKUP-FULL-2]/pg_data/base/16384/17000.gz, strSourcePathType = backup:cluster, strUser = [USER-1] + DEBUG: File->owner(): strFile = [TEST_PATH]/db/common/base/16384/17000.backrest.tmp, strGroup = [GROUP-1], strPathType = absolute, strUser = [USER-1] + INFO: restore file [TEST_PATH]/db/common/base/16384/17000 (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/1/12000, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/1/12000, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 4, strHash = a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/base/1/12000 - exists and matches backup (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/32768/PG_VERSION, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/32768/PG_VERSION, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/PG_VERSION - exists and matches backup (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/16384/PG_VERSION, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/16384/PG_VERSION, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/16384/PG_VERSION - exists and matches backup (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/1/PG_VERSION, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/1/PG_VERSION, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/1/PG_VERSION - exists and matches backup (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/PG_VERSION, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/PG_VERSION, strHashType = , strPathType = db:absolute @@ -582,9 +681,14 @@ DETAIL: preserve file [TEST_PATH]/db/common/recovery.conf DETAIL: remove link [TEST_PATH]/db/common/postgresql.conf DETAIL: remove link [TEST_PATH]/db/common/pg_stat INFO: cleanup removed 2 links - INFO: restore file [TEST_PATH]/db/common/postgresql.conf (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: restore file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: restore file [TEST_PATH]/db/common/base/base1.txt - exists and matches size 4 and modification time [MODIFICATION-TIME-2] (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common/postgresql.conf (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/33000 - exists and matches size 5 and modification time [MODIFICATION-TIME-2] (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common/base/16384/17000 - exists and matches size 4 and modification time [MODIFICATION-TIME-2] (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/base/1/12000 - exists and matches size 4 and modification time [MODIFICATION-TIME-2] (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/PG_VERSION - exists and matches size 3 and modification time [MODIFICATION-TIME-2] (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/16384/PG_VERSION - exists and matches size 3 and modification time [MODIFICATION-TIME-2] (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/1/PG_VERSION - exists and matches size 3 and modification time [MODIFICATION-TIME-2] (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: restore file [TEST_PATH]/db/common/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -682,34 +786,43 @@ incr backup (add tablespace 1) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: Manifest->build: found tablespace 1 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_clog, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_stat, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 + DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = [TS_PATH-1], strPathOp = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = [TS_PATH-1]/16384, strPathOp = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute DEBUG: Backup->process: create temp backup path [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->pathCreate(): bCreateParents = true, bIgnoreExists = false, strMode = <0750>, strPath = [undef], strPathType = backup:tmp DEBUG: Backup->processManifest(): bCompress = true, bHardLink = false, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = incr DEBUG: Backup->processManifest: reference pg_data/PG_VERSION to [BACKUP-FULL-2] - DEBUG: Backup->processManifest: reference pg_data/base/base1.txt to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/1/12000 to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/1/PG_VERSION to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/16384/17000 to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/16384/PG_VERSION to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/32768/33000 to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/32768/PG_VERSION to [BACKUP-FULL-2] DEBUG: Backup->processManifest: reference pg_data/global/pg_control to [BACKUP-FULL-2] DEBUG: Backup->processManifest: reference pg_data/pg_stat/global.stat to [BACKUP-FULL-2] DEBUG: Backup->processManifest: reference pg_data/postgresql.conf to [BACKUP-FULL-2] DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/badchecksum.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/badchecksum.txt, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 61%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/1/[TS_PATH-1]/tablespace1.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f DEBUG: Backup->processManifest=>: lSizeTotal = 18 INFO: incr backup size = 18B INFO: new backup label = [BACKUP-INCR-1] @@ -801,11 +914,16 @@ pg_tblspc/1={"path":"[TEST_PATH]/db/tablespace/ts1","tablespace-id":"1","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -822,6 +940,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -829,6 +950,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} [target:path:default] group="postgres" @@ -885,7 +1007,7 @@ incr backup (resume and add tablespace 2) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: Manifest->build: found tablespace 1 @@ -893,18 +1015,23 @@ incr backup (resume and add tablespace 2) DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_clog, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_stat, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 + DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = [TS_PATH-1], strPathOp = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/2, strParentPath = [TEST_PATH]/db/common/pg_tblspc/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts2 + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = [TS_PATH-1]/16384, strPathOp = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute + DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/2, strParentPath = [TEST_PATH]/db/common/pg_tblspc/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts2 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/tablespace/ts2, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/tablespace/ts2, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = [TS_PATH-1], strPathOp = [TEST_PATH]/db/tablespace/ts2, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = [TS_PATH-1]/32768, strPathOp = [TEST_PATH]/db/tablespace/ts2, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute WARN: aborted backup of same type exists, will be cleaned to remove invalid files and resumed DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp @@ -914,10 +1041,16 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_tblspc/1, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_tblspc/1/[TS_PATH-1], strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 4, oManifestHashRef = [hash], strPathFileOp = pg_tblspc/1/[TS_PATH-1]/16384, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: Backup->fileNotInManifest=>: stryFile = () DEBUG: Backup->processManifest(): bCompress = true, bHardLink = false, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = incr DEBUG: Backup->processManifest: reference pg_data/PG_VERSION to [BACKUP-FULL-2] - DEBUG: Backup->processManifest: reference pg_data/base/base1.txt to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/1/12000 to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/1/PG_VERSION to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/16384/17000 to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/16384/PG_VERSION to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/32768/33000 to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/32768/PG_VERSION to [BACKUP-FULL-2] DEBUG: Backup->processManifest: reference pg_data/global/pg_control to [BACKUP-FULL-2] DEBUG: Backup->processManifest: reference pg_data/pg_stat/global.stat to [BACKUP-FULL-2] DEBUG: Backup->processManifest: reference pg_data/postgresql.conf to [BACKUP-FULL-2] @@ -926,11 +1059,11 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp WARN: resumed backup file pg_data/badchecksum.txt should have checksum bogus but actually has checksum f927212cd08d11a42a666b2f04235398e9ceeb51. The file will be recopied and backup will continue but this may be an issue unless the backup temp path is known to be corrupted. DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/badchecksum.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/badchecksum.txt, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 44%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/2/[TS_PATH-1]/tablespace2.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - DEBUG: File->hashSize(): bCompressed = true, strFile = pg_tblspc/1/[TS_PATH-1]/tablespace1.txt.gz, strHashType = , strPathType = backup:tmp + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt.gz, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 7, strHash = d85de07d6421d90aa9191c11c889bfde43680f0f -DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f +DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f DEBUG: Backup->processManifest=>: lSizeTotal = 25 INFO: incr backup size = 25B INFO: new backup label = [BACKUP-INCR-2] @@ -1023,12 +1156,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2","tablespace-id":"2","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1046,6 +1184,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1053,8 +1194,10 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1090,8 +1233,8 @@ diff backup (cannot resume - new diff) INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] WARN: aborted backup exists, but cannot be resumed (new backup-type 'diff' does not match aborted backup-type 'incr') - will be dropped and recreated INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 44%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f INFO: diff backup size = 25B INFO: new backup label = [BACKUP-DIFF-1] INFO: backup stop @@ -1155,12 +1298,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2","tablespace-id":"2","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1178,6 +1326,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1185,8 +1336,10 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1222,8 +1375,8 @@ diff backup (cannot resume - disabled) INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] WARN: aborted backup exists, but cannot be resumed (resume is disabled) - will be dropped and recreated INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 44%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f INFO: diff backup size = 25B INFO: new backup label = [BACKUP-DIFF-2] INFO: backup stop @@ -1287,12 +1440,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2","tablespace-id":"2","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1310,6 +1468,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1317,8 +1478,10 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1382,12 +1545,17 @@ restore, backup '[BACKUP-DIFF-2]', remap (remap all paths) DETAIL: check [TEST_PATH]/db/common-2 exists DETAIL: check [TEST_PATH]/db/tablespace/ts1-2 exists DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists - INFO: restore file [TEST_PATH]/db/common-2/postgresql.conf (21B, 36%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: restore file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 55%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 67%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 79%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f - INFO: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 87%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 - INFO: restore file [TEST_PATH]/db/common-2/base/base1.txt (4B, 94%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/postgresql.conf (21B, 27%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 42%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 51%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 60%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + INFO: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 67%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 73%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + INFO: restore file [TEST_PATH]/db/common-2/base/16384/17000 (4B, 78%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/base/1/12000 (4B, 84%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION (3B, 92%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: restore file [TEST_PATH]/db/common-2/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common-2/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -1413,12 +1581,17 @@ DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists INFO: remove invalid files/paths/links from [TEST_PATH]/db/tablespace/ts1-2/[TS_PATH-1] INFO: remove invalid files/paths/links from [TEST_PATH]/db/common-2 DETAIL: preserve file [TEST_PATH]/db/common-2/recovery.conf -DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 36%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 -DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 55%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 -DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt - exists and matches backup (7B, 67%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 -DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt - exists and matches backup (7B, 79%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f -DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 87%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: restore file [TEST_PATH]/db/common-2/base/base1.txt - exists and matches backup (4B, 94%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 27%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 42%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 +DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt - exists and matches backup (7B, 51%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 +DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt - exists and matches backup (7B, 60%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f +DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 67%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/33000 - exists and matches backup (5B, 73%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/17000 - exists and matches backup (4B, 78%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/12000 - exists and matches backup (4B, 84%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION - exists and matches backup (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION - exists and matches backup (3B, 92%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION - exists and matches backup (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DETAIL: restore file [TEST_PATH]/db/common-2/PG_VERSION - exists and matches backup (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common-2/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -1434,7 +1607,7 @@ incr backup (add files and remove tablespace 2) ------------------------------------------------------------------------------------------------------------------------------------ INFO: backup start: --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast INFO: last backup label = [BACKUP-DIFF-2], version = [VERSION-1] - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt (8B, 61%) checksum e324463005236d83e6e54795dbddd20a74533bf3 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt (8B, 61%) checksum e324463005236d83e6e54795dbddd20a74533bf3 INFO: backup file [TEST_PATH]/db/common-2/base/base2.txt (5B, 100%) checksum 09b5e31766be1dba1ec27de82f975c1b6eea2a92 INFO: incr backup size = 13B INFO: new backup label = [BACKUP-INCR-3] @@ -1502,13 +1675,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-DIFF-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1525,6 +1703,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1532,6 +1713,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1565,7 +1747,7 @@ incr backup (update files) ------------------------------------------------------------------------------------------------------------------------------------ INFO: backup start: --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast INFO: last backup label = [BACKUP-INCR-3], version = [VERSION-1] - INFO: backup file [TEST_PATH]/db/common-2/base/base1.txt (8B, 100%) checksum 9a53d532e27785e681766c98516a5e93f096a501 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/17000 (8B, 100%) checksum 9a53d532e27785e681766c98516a5e93f096a501 INFO: incr backup size = 8B INFO: new backup label = [BACKUP-INCR-4] INFO: backup stop @@ -1632,13 +1814,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-DIFF-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","reference":"[BACKUP-INCR-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-INCR-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-INCR-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1655,6 +1842,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1662,6 +1852,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1697,9 +1888,9 @@ diff backup (updates since last full) INFO: backup start: --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast --type=diff INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 28%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt (8B, 48%) checksum e324463005236d83e6e54795dbddd20a74533bf3 - INFO: backup file [TEST_PATH]/db/common-2/base/base1.txt (8B, 69%) checksum 9a53d532e27785e681766c98516a5e93f096a501 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 87%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt (8B, 48%) checksum e324463005236d83e6e54795dbddd20a74533bf3 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/17000 (8B, 69%) checksum 9a53d532e27785e681766c98516a5e93f096a501 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 87%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 INFO: backup file [TEST_PATH]/db/common-2/base/base2.txt (5B, 100%) checksum 09b5e31766be1dba1ec27de82f975c1b6eea2a92 INFO: diff backup size = 39B INFO: new backup label = [BACKUP-DIFF-3] @@ -1767,13 +1958,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1790,6 +1986,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1797,6 +1996,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1898,13 +2098,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1921,6 +2126,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1928,6 +2136,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1965,8 +2174,8 @@ diff backup (remove files during backup) INFO: backup start: --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast --test --test-delay=1 --test-point=manifest-build=y --type=diff INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 35%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt (12B, 61%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 83%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 61%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 83%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 DETAIL: skip file removed by database: [TEST_PATH]/db/common-2/base/base2.txt INFO: diff backup size = 31B INFO: new backup label = [BACKUP-DIFF-4] @@ -2034,11 +2243,16 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2055,6 +2269,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2062,6 +2279,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2098,12 +2316,17 @@ full backup (update file) > [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --no-online --log-level-console=detail --type=full --stanza=db backup ------------------------------------------------------------------------------------------------------------------------------------ INFO: backup start: --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast --type=full - INFO: backup file [TEST_PATH]/db/common-2/postgresql.conf (21B, 30%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt (12B, 48%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 - INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 64%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common-2/base/base1.txt (9B, 77%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 88%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: backup file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 95%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: backup file [TEST_PATH]/db/common-2/postgresql.conf (21B, 24%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 38%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 + INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 51%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/17000 (9B, 61%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 69%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 75%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: backup file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 81%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + INFO: backup file [TEST_PATH]/db/common-2/base/1/12000 (4B, 86%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: backup file [TEST_PATH]/db/common-2/base/32768/PG_VERSION (3B, 89%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/PG_VERSION (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: backup file [TEST_PATH]/db/common-2/base/1/PG_VERSION (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: backup file [TEST_PATH]/db/common-2/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: backup file [TEST_PATH]/db/common-2/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 INFO: full backup size = 8KB @@ -2171,12 +2394,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2193,6 +2421,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2200,6 +2431,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2242,48 +2474,48 @@ stanza: db full backup: [BACKUP-FULL-2] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 8KB - repository size: 277B, repository backup size: 277B + repository size: 395B, repository backup size: 395B diff backup: [BACKUP-DIFF-2] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 25B - repository size: 362B, repository backup size: 85B + repository size: 480B, repository backup size: 85B backup reference list: [BACKUP-FULL-2] incr backup: [BACKUP-INCR-3] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 13B - repository size: 388B, repository backup size: 53B + repository size: 506B, repository backup size: 53B backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-2] incr backup: [BACKUP-INCR-4] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 8B - repository size: 392B, repository backup size: 28B + repository size: 510B, repository backup size: 28B backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-2], [BACKUP-INCR-3] diff backup: [BACKUP-DIFF-3] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 39B - repository size: 392B, repository backup size: 139B + repository size: 510B, repository backup size: 139B backup reference list: [BACKUP-FULL-2] incr backup: [BACKUP-INCR-5] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 0B - repository size: 392B, repository backup size: 0B + repository size: 510B, repository backup size: 0B backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-3] diff backup: [BACKUP-DIFF-4] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 30B - repository size: 343B, repository backup size: 90B + repository size: 461B, repository backup size: 90B backup reference list: [BACKUP-FULL-2] full backup: [BACKUP-FULL-3] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 8KB - repository size: 372B, repository backup size: 372B + repository size: 490B, repository backup size: 490B info db > [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=warn --stanza=db info --output=json @@ -2640,13 +2872,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"cafac3c59553f2cfde41ce2e62e7662295f108c0","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2663,6 +2900,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2670,6 +2910,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2697,6 +2938,86 @@ db-version="9.3" [db:history] 1={"db-catalog-version":201306121,"db-control-version":937,"db-system-id":6156904820763115222,"db-version":"9.3"} +restore delta, remap (selective restore 16384) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=detail --db-include=16384 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + INFO: restore start: --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-include=16384=1 --delta --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --repo-path=[TEST_PATH]/backrest --stanza=db --tablespace-map=2=[TEST_PATH]/db/tablespace/ts2-2 + INFO: restore backup set [BACKUP-DIFF-5] + INFO: remap tablespace pg_tblspc/2 directory to [TEST_PATH]/db/tablespace/ts2-2 +DETAIL: check [TEST_PATH]/db/common-2 exists +DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists + INFO: remove invalid files/paths/links from [TEST_PATH]/db/tablespace/ts2-2/[TS_PATH-1] + INFO: remove invalid files/paths/links from [TEST_PATH]/db/common-2 +DETAIL: preserve file [TEST_PATH]/db/common-2/recovery.conf +DETAIL: databases for include/exclude (1, 16384, 32768) +DETAIL: database filter: (^pg_data\/base\/32768\/)|(^pg_tblspc/2\/[TS_PATH-1]\/32768\/) +DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 22%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 34%) +DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 46%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 +DETAIL: restore file [TEST_PATH]/db/common-2/base/base2.txt - exists and matches backup (9B, 55%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/17000 - exists and matches backup (9B, 65%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) +DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 77%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 83%) +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/12000 - exists and matches backup (4B, 87%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION - exists and matches backup (3B, 90%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION - exists and matches backup (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION - exists and matches backup (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/PG_VERSION - exists and matches backup (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: wrote [TEST_PATH]/db/common-2/recovery.conf + INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) + INFO: restore file [TEST_PATH]/db/common-2/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 + INFO: restore stop + ++ supplemental file: [TEST_PATH]/db/common-2/recovery.conf +---------------------------------------------------------- +restore_command = '[BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=detail --stanza=db archive-get %f "%p"' + +restore delta, remap (selective restore 32768) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=detail --db-include=32768 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + INFO: restore start: --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-include=32768=1 --delta --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --repo-path=[TEST_PATH]/backrest --stanza=db --tablespace-map=2=[TEST_PATH]/db/tablespace/ts2-2 + INFO: restore backup set [BACKUP-DIFF-5] + INFO: remap tablespace pg_tblspc/2 directory to [TEST_PATH]/db/tablespace/ts2-2 +DETAIL: check [TEST_PATH]/db/common-2 exists +DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists + INFO: remove invalid files/paths/links from [TEST_PATH]/db/tablespace/ts2-2/[TS_PATH-1] + INFO: remove invalid files/paths/links from [TEST_PATH]/db/common-2 +DETAIL: preserve file [TEST_PATH]/db/common-2/recovery.conf +DETAIL: databases for include/exclude (1, 16384, 32768) +DETAIL: database filter: (^pg_data\/base\/16384\/)|(^pg_tblspc/2\/[TS_PATH-1]\/16384\/) +DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 22%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 34%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 +DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 46%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 +DETAIL: restore file [TEST_PATH]/db/common-2/base/base2.txt - exists and matches backup (9B, 55%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/base/16384/17000 (9B, 65%) + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 +DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 77%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 83%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/12000 - exists and matches backup (4B, 87%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION - exists and matches backup (3B, 90%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION - exists and matches backup (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION - exists and matches backup (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/PG_VERSION - exists and matches backup (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: wrote [TEST_PATH]/db/common-2/recovery.conf + INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) + INFO: restore file [TEST_PATH]/db/common-2/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 + INFO: restore stop + ++ supplemental file: [TEST_PATH]/db/common-2/recovery.conf +---------------------------------------------------------- +restore_command = '[BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=detail --stanza=db archive-get %f "%p"' + +restore delta, remap, expect exit 155 (error on invalid id) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=warn --db-include=7777 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + ERROR: [155]: database to include '7777' does not exist + +restore delta, remap, expect exit 156 (error on system id) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=warn --db-include=1 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + ERROR: [156]: system databases (template0, postgres, etc.) are included by default + restore, remap, expect exit 148 (no tablespace remap - error when tablespace dir does not exist) > [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=detail --tablespace-map-all=../../tablespace --stanza=db restore ------------------------------------------------------------------------------------------------------------------------------------ @@ -2718,13 +3039,18 @@ restore (no tablespace remap) INFO: remap tablespace pg_tblspc/2 directory to ../../tablespace/ts2 DETAIL: check [TEST_PATH]/db/common-2/base exists DETAIL: check [TEST_PATH]/db/common-2/tablespace exists - INFO: restore file [TEST_PATH]/db/common-2/base/postgresql.conf (21B, 27%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt (12B, 42%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 - INFO: restore file [TEST_PATH]/db/common-2/base/badchecksum.txt (11B, 57%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: restore file [TEST_PATH]/db/common-2/base/base/base2.txt (9B, 68%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 - INFO: restore file [TEST_PATH]/db/common-2/base/base/base1.txt (9B, 80%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 - INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 89%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: restore file [TEST_PATH]/db/common-2/base/pg_stat/global.stat (5B, 96%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/postgresql.conf (21B, 22%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 34%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 + INFO: restore file [TEST_PATH]/db/common-2/base/badchecksum.txt (11B, 46%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 + INFO: restore file [TEST_PATH]/db/common-2/base/base/base2.txt (9B, 55%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 + INFO: restore file [TEST_PATH]/db/common-2/base/base/16384/17000 (9B, 65%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 + INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: restore file [TEST_PATH]/db/common-2/base/pg_stat/global.stat (5B, 77%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/base/32768/33000 (5B, 83%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + INFO: restore file [TEST_PATH]/db/common-2/base/base/1/12000 (4B, 87%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/base/base/32768/PG_VERSION (3B, 90%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/base/16384/PG_VERSION (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/base/1/PG_VERSION (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: restore file [TEST_PATH]/db/common-2/base/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common-2/base/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -2744,12 +3070,12 @@ stanza: db full backup: [BACKUP-FULL-3] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 8KB - repository size: 372B, repository backup size: 372B + repository size: 490B, repository backup size: 490B diff backup: [BACKUP-DIFF-5] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 9B - repository size: 401B, repository backup size: 29B + repository size: 519B, repository backup size: 29B backup reference list: [BACKUP-FULL-3] stanza: db_empty diff --git a/test/expect/backup-synthetic-004.log b/test/expect/backup-synthetic-004.log index 70d593d11..37344b353 100644 --- a/test/expect/backup-synthetic-004.log +++ b/test/expect/backup-synthetic-004.log @@ -43,19 +43,22 @@ full backup DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_clog, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_stat, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/pg_stat, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute @@ -64,25 +67,43 @@ full backup DEBUG: Backup->processManifest(): bCompress = true, bHardLink = true, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = full DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_tblspc, strPathType = backup:tmp DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-1], strDestinationFile = pg_data/postgresql.conf.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/postgresql.conf, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/postgresql.conf (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: backup file [TEST_PATH]/db/common/postgresql.conf (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 21, lManifestSaveSize = 3 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-1], strDestinationFile = pg_data/pg_stat/global.stat.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_stat/global.stat, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: backup file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 5, lManifestSaveSize = 3 - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/base1.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/base1.txt, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/base/base1.txt (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/32768/33000.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/32768/33000, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/32768/33000 (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 5, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/16384/17000.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/16384/17000, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/16384/17000 (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 4, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/1/12000.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/1/12000, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/1/12000 (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 4, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/32768/PG_VERSION.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/32768/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/32768/PG_VERSION (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/16384/PG_VERSION.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/16384/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/16384/PG_VERSION (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/1/PG_VERSION.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/1/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/1/PG_VERSION (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/PG_VERSION.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-1], strDestinationFile = pg_data/global/pg_control.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/global/pg_control, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 - DEBUG: Backup->processManifest=>: lSizeTotal = 8225 + DEBUG: Backup->processManifest=>: lSizeTotal = 8243 INFO: full backup size = 8KB INFO: new backup label = [BACKUP-FULL-1] DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = , lModificationTime = [undef], strDestinationFile = backup.manifest.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = backup.manifest, strSourcePathType = backup:tmp, strUser = [undef] @@ -169,7 +190,12 @@ pg_data/postgresql.conf={"file":"postgresql.conf","path":"../pg_config","type":" [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} @@ -190,6 +216,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -240,19 +269,22 @@ full backup (resume) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_clog, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_stat, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/pg_stat, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute @@ -262,6 +294,9 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_data, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/base, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/1, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/16384, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/32768, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/global, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/pg_clog, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/pg_stat, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp @@ -272,25 +307,43 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: Backup->processManifest(): bCompress = true, bHardLink = true, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = full DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_tblspc, strPathType = backup:tmp DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/postgresql.conf.gz, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 21, strHash = 6721d92c9fcdf4248acff1f9a1377127d9064807 -DETAIL: checksum resumed file [TEST_PATH]/db/common/postgresql.conf (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: checksum resumed file [TEST_PATH]/db/common/postgresql.conf (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/pg_stat/global.stat.gz, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 5, strHash = e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 - DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/base1.txt.gz, strHashType = , strPathType = backup:tmp +DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/32768/33000.gz, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 5, strHash = 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/32768/33000 (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/16384/17000.gz, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 4, strHash = a3b357a3e395e43fcfb19bb13f3c1b5179279593 -DETAIL: checksum resumed file [TEST_PATH]/db/common/base/base1.txt (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/16384/17000 (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/1/12000.gz, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 4, strHash = a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/1/12000 (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/32768/PG_VERSION.gz, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/32768/PG_VERSION (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/16384/PG_VERSION.gz, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/16384/PG_VERSION (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/1/PG_VERSION.gz, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/1/PG_VERSION (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/PG_VERSION.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/global/pg_control.gz, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 8192, strHash = 56fe5780b8dca9705e0c22032a83828860a21235 DETAIL: checksum resumed file [TEST_PATH]/db/common/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 - DEBUG: Backup->processManifest=>: lSizeTotal = 8225 + DEBUG: Backup->processManifest=>: lSizeTotal = 8243 INFO: full backup size = 8KB INFO: new backup label = [BACKUP-FULL-2] DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = , lModificationTime = [undef], strDestinationFile = backup.manifest.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = backup.manifest, strSourcePathType = backup:tmp, strUser = [undef] @@ -377,7 +430,12 @@ pg_data/postgresql.conf={"file":"postgresql.conf","path":"../pg_config","type":" [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} @@ -398,6 +456,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -459,6 +520,9 @@ DETAIL: check [TEST_PATH]/db/common exists DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = deleteme, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute @@ -488,6 +552,9 @@ DETAIL: check [TEST_PATH]/db/pg_config exists DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = deleteme, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute @@ -517,22 +584,54 @@ DETAIL: set mode 0700 on [TEST_PATH]/db/common/base DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postgresql.conf, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: build level 2 paths/links + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/1, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/16384, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/32768, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: build level 3 paths/links DEBUG: Restore->process: restore in main process DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postgresql.conf, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/postgresql.conf, strHashType = , strPathType = db:absolute DEBUG: File->hashSize=>: iSize = 21, strHash = 6721d92c9fcdf4248acff1f9a1377127d9064807 -DETAIL: restore file [TEST_PATH]/db/common/postgresql.conf - exists and matches backup (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: restore file [TEST_PATH]/db/common/postgresql.conf - exists and matches backup (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/pg_stat/global.stat, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/pg_stat/global.stat, strHashType = , strPathType = db:absolute DEBUG: File->hashSize=>: iSize = 5, strHash = e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: restore file [TEST_PATH]/db/common/pg_stat/global.stat - exists and matches backup (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 - DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/base1.txt, strPathType = db:absolute +DETAIL: restore file [TEST_PATH]/db/common/pg_stat/global.stat - exists and matches backup (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/32768/33000, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/32768/33000, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 5, strHash = 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/33000 - exists and matches backup (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/16384/17000, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = , bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = true, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = [TEST_PATH]/db/common/base/base1.txt, strDestinationPathType = db:absolute, strGroup = [GROUP-1], strMode = 0600, strSourceFile = [BACKUP-FULL-2]/pg_data/base/base1.txt.gz, strSourcePathType = backup:cluster, strUser = [USER-1] - DEBUG: File->owner(): strFile = [TEST_PATH]/db/common/base/base1.txt.backrest.tmp, strGroup = [GROUP-1], strPathType = absolute, strUser = [USER-1] - INFO: restore file [TEST_PATH]/db/common/base/base1.txt (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = , bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = true, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = [TEST_PATH]/db/common/base/16384/17000, strDestinationPathType = db:absolute, strGroup = [GROUP-1], strMode = 0600, strSourceFile = [BACKUP-FULL-2]/pg_data/base/16384/17000.gz, strSourcePathType = backup:cluster, strUser = [USER-1] + DEBUG: File->owner(): strFile = [TEST_PATH]/db/common/base/16384/17000.backrest.tmp, strGroup = [GROUP-1], strPathType = absolute, strUser = [USER-1] + INFO: restore file [TEST_PATH]/db/common/base/16384/17000 (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/1/12000, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/1/12000, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 4, strHash = a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/base/1/12000 - exists and matches backup (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/32768/PG_VERSION, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/32768/PG_VERSION, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/PG_VERSION - exists and matches backup (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/16384/PG_VERSION, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/16384/PG_VERSION, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/16384/PG_VERSION - exists and matches backup (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/1/PG_VERSION, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/1/PG_VERSION, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/1/PG_VERSION - exists and matches backup (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/PG_VERSION, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/PG_VERSION, strHashType = , strPathType = db:absolute @@ -584,9 +683,14 @@ DETAIL: preserve file [TEST_PATH]/db/common/recovery.conf DETAIL: remove link [TEST_PATH]/db/common/postgresql.conf DETAIL: remove link [TEST_PATH]/db/common/pg_stat INFO: cleanup removed 2 links - INFO: restore file [TEST_PATH]/db/common/postgresql.conf (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: restore file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: restore file [TEST_PATH]/db/common/base/base1.txt - exists and matches size 4 and modification time [MODIFICATION-TIME-2] (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common/postgresql.conf (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/33000 - exists and matches size 5 and modification time [MODIFICATION-TIME-2] (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common/base/16384/17000 - exists and matches size 4 and modification time [MODIFICATION-TIME-2] (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/base/1/12000 - exists and matches size 4 and modification time [MODIFICATION-TIME-2] (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/PG_VERSION - exists and matches size 3 and modification time [MODIFICATION-TIME-2] (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/16384/PG_VERSION - exists and matches size 3 and modification time [MODIFICATION-TIME-2] (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/1/PG_VERSION - exists and matches size 3 and modification time [MODIFICATION-TIME-2] (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: restore file [TEST_PATH]/db/common/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -684,27 +788,34 @@ incr backup (add tablespace 1) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: Manifest->build: found tablespace 1 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_clog, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_stat, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 + DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = [TS_PATH-1], strPathOp = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = [TS_PATH-1]/16384, strPathOp = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute DEBUG: Backup->process: create temp backup path [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->pathCreate(): bCreateParents = true, bIgnoreExists = false, strMode = <0750>, strPath = [undef], strPathType = backup:tmp DEBUG: Backup->processManifest(): bCompress = true, bHardLink = true, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = incr DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp @@ -712,10 +823,21 @@ incr backup (add tablespace 1) DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/1, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/1/[TS_PATH-1], strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/1/[TS_PATH-1]/16384, strPathType = backup:tmp DEBUG: Backup->processManifest: hardlink pg_data/PG_VERSION to [BACKUP-FULL-2] DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/PG_VERSION, strSourcePathType = backup:cluster - DEBUG: Backup->processManifest: hardlink pg_data/base/base1.txt to [BACKUP-FULL-2] - DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/base1.txt, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/base1.txt, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/1/12000 to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/1/12000, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/1/12000, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/1/PG_VERSION to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/1/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/1/PG_VERSION, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/16384/17000 to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/16384/17000, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/16384/17000, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/16384/PG_VERSION to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/16384/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/16384/PG_VERSION, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/32768/33000 to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/32768/33000, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/32768/33000, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/32768/PG_VERSION to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/32768/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/32768/PG_VERSION, strSourcePathType = backup:cluster DEBUG: Backup->processManifest: hardlink pg_data/global/pg_control to [BACKUP-FULL-2] DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/global/pg_control, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/global/pg_control, strSourcePathType = backup:cluster DEBUG: Backup->processManifest: hardlink pg_data/pg_stat/global.stat to [BACKUP-FULL-2] @@ -724,8 +846,8 @@ incr backup (add tablespace 1) DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/postgresql.conf, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/postgresql.conf, strSourcePathType = backup:cluster DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/badchecksum.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/badchecksum.txt, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 61%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/1/[TS_PATH-1]/tablespace1.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f DEBUG: Backup->processManifest=>: lSizeTotal = 18 INFO: incr backup size = 18B INFO: new backup label = [BACKUP-INCR-1] @@ -818,11 +940,16 @@ pg_tblspc/1={"path":"[TEST_PATH]/db/tablespace/ts1","tablespace-id":"1","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -839,6 +966,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -846,6 +976,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} [target:path:default] group="postgres" @@ -902,7 +1033,7 @@ incr backup (resume and add tablespace 2) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: Manifest->build: found tablespace 1 @@ -910,18 +1041,23 @@ incr backup (resume and add tablespace 2) DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_clog, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_stat, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 + DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = [TS_PATH-1], strPathOp = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/2, strParentPath = [TEST_PATH]/db/common/pg_tblspc/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts2 + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = [TS_PATH-1]/16384, strPathOp = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute + DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/2, strParentPath = [TEST_PATH]/db/common/pg_tblspc/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts2 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/tablespace/ts2, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/tablespace/ts2, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = [TS_PATH-1], strPathOp = [TEST_PATH]/db/tablespace/ts2, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = [TS_PATH-1]/32768, strPathOp = [TEST_PATH]/db/tablespace/ts2, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute WARN: aborted backup of same type exists, will be cleaned to remove invalid files and resumed DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp @@ -929,6 +1065,9 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_data, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/base, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/1, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/16384, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/32768, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/global, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/pg_clog, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/pg_stat, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp @@ -936,15 +1075,24 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_tblspc/1, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_tblspc/1/[TS_PATH-1], strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp - DEBUG: Backup->fileNotInManifest=>: stryFile = (pg_data/PG_VERSION.gz, pg_data/base/base1.txt.gz, pg_data/global/pg_control.gz, pg_data/pg_stat/global.stat.gz, pg_data/postgresql.conf.gz) + DEBUG: File->manifestRecurse(): iDepth = 4, oManifestHashRef = [hash], strPathFileOp = pg_tblspc/1/[TS_PATH-1]/16384, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: Backup->fileNotInManifest=>: stryFile = (pg_data/PG_VERSION.gz, pg_data/base/1/12000.gz, pg_data/base/1/PG_VERSION.gz, pg_data/base/16384/17000.gz, pg_data/base/16384/PG_VERSION.gz, pg_data/base/32768/33000.gz, pg_data/base/32768/PG_VERSION.gz, pg_data/global/pg_control.gz, pg_data/pg_stat/global.stat.gz, pg_data/postgresql.conf.gz) DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/postgresql.conf.gz DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/pg_stat/global.stat.gz DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/global/pg_control.gz - DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/base1.txt.gz + DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/32768/PG_VERSION.gz + DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/32768/33000.gz + DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/16384/PG_VERSION.gz + DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/16384/17000.gz + DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/1/PG_VERSION.gz + DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/1/12000.gz DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/PG_VERSION.gz DEBUG: Backup->processManifest(): bCompress = true, bHardLink = true, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = incr DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp @@ -952,12 +1100,24 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/1, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/1/[TS_PATH-1], strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/1/[TS_PATH-1]/16384, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/2, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/2/[TS_PATH-1], strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/2/[TS_PATH-1]/32768, strPathType = backup:tmp DEBUG: Backup->processManifest: hardlink pg_data/PG_VERSION to [BACKUP-FULL-2] DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/PG_VERSION, strSourcePathType = backup:cluster - DEBUG: Backup->processManifest: hardlink pg_data/base/base1.txt to [BACKUP-FULL-2] - DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/base1.txt, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/base1.txt, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/1/12000 to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/1/12000, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/1/12000, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/1/PG_VERSION to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/1/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/1/PG_VERSION, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/16384/17000 to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/16384/17000, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/16384/17000, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/16384/PG_VERSION to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/16384/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/16384/PG_VERSION, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/32768/33000 to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/32768/33000, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/32768/33000, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/32768/PG_VERSION to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/32768/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/32768/PG_VERSION, strSourcePathType = backup:cluster DEBUG: Backup->processManifest: hardlink pg_data/global/pg_control to [BACKUP-FULL-2] DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/global/pg_control, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/global/pg_control, strSourcePathType = backup:cluster DEBUG: Backup->processManifest: hardlink pg_data/pg_stat/global.stat to [BACKUP-FULL-2] @@ -969,11 +1129,11 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp WARN: resumed backup file pg_data/badchecksum.txt should have checksum bogus but actually has checksum f927212cd08d11a42a666b2f04235398e9ceeb51. The file will be recopied and backup will continue but this may be an issue unless the backup temp path is known to be corrupted. DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/badchecksum.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/badchecksum.txt, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 44%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/2/[TS_PATH-1]/tablespace2.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - DEBUG: File->hashSize(): bCompressed = true, strFile = pg_tblspc/1/[TS_PATH-1]/tablespace1.txt.gz, strHashType = , strPathType = backup:tmp + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt.gz, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 7, strHash = d85de07d6421d90aa9191c11c889bfde43680f0f -DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f +DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f DEBUG: Backup->processManifest=>: lSizeTotal = 25 INFO: incr backup size = 25B INFO: new backup label = [BACKUP-INCR-2] @@ -1067,12 +1227,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2","tablespace-id":"2","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1090,6 +1255,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1097,8 +1265,10 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1134,8 +1304,8 @@ diff backup (cannot resume - new diff) INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] WARN: aborted backup exists, but cannot be resumed (new backup-type 'diff' does not match aborted backup-type 'incr') - will be dropped and recreated INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 44%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f INFO: diff backup size = 25B INFO: new backup label = [BACKUP-DIFF-1] INFO: backup stop @@ -1200,12 +1370,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2","tablespace-id":"2","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1223,6 +1398,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1230,8 +1408,10 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1267,8 +1447,8 @@ diff backup (cannot resume - disabled) INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] WARN: aborted backup exists, but cannot be resumed (resume is disabled) - will be dropped and recreated INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 44%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f INFO: diff backup size = 25B INFO: new backup label = [BACKUP-DIFF-2] INFO: backup stop @@ -1333,12 +1513,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2","tablespace-id":"2","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1356,6 +1541,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1363,8 +1551,10 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1428,12 +1618,17 @@ restore, backup '[BACKUP-DIFF-2]', remap (remap all paths) DETAIL: check [TEST_PATH]/db/common-2 exists DETAIL: check [TEST_PATH]/db/tablespace/ts1-2 exists DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists - INFO: restore file [TEST_PATH]/db/common-2/postgresql.conf (21B, 36%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: restore file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 55%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 67%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 79%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f - INFO: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 87%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 - INFO: restore file [TEST_PATH]/db/common-2/base/base1.txt (4B, 94%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/postgresql.conf (21B, 27%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 42%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 51%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 60%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + INFO: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 67%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 73%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + INFO: restore file [TEST_PATH]/db/common-2/base/16384/17000 (4B, 78%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/base/1/12000 (4B, 84%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION (3B, 92%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: restore file [TEST_PATH]/db/common-2/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common-2/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -1459,12 +1654,17 @@ DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists INFO: remove invalid files/paths/links from [TEST_PATH]/db/tablespace/ts1-2/[TS_PATH-1] INFO: remove invalid files/paths/links from [TEST_PATH]/db/common-2 DETAIL: preserve file [TEST_PATH]/db/common-2/recovery.conf -DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 36%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 -DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 55%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 -DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt - exists and matches backup (7B, 67%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 -DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt - exists and matches backup (7B, 79%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f -DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 87%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: restore file [TEST_PATH]/db/common-2/base/base1.txt - exists and matches backup (4B, 94%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 27%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 42%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 +DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt - exists and matches backup (7B, 51%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 +DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt - exists and matches backup (7B, 60%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f +DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 67%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/33000 - exists and matches backup (5B, 73%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/17000 - exists and matches backup (4B, 78%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/12000 - exists and matches backup (4B, 84%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION - exists and matches backup (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION - exists and matches backup (3B, 92%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION - exists and matches backup (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DETAIL: restore file [TEST_PATH]/db/common-2/PG_VERSION - exists and matches backup (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common-2/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -1480,7 +1680,7 @@ incr backup (add files and remove tablespace 2) ------------------------------------------------------------------------------------------------------------------------------------ INFO: backup start: --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --hardlink --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast INFO: last backup label = [BACKUP-DIFF-2], version = [VERSION-1] - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt (8B, 61%) checksum e324463005236d83e6e54795dbddd20a74533bf3 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt (8B, 61%) checksum e324463005236d83e6e54795dbddd20a74533bf3 INFO: backup file [TEST_PATH]/db/common-2/base/base2.txt (5B, 100%) checksum 09b5e31766be1dba1ec27de82f975c1b6eea2a92 INFO: incr backup size = 13B INFO: new backup label = [BACKUP-INCR-3] @@ -1549,13 +1749,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-DIFF-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1572,6 +1777,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1579,6 +1787,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1612,7 +1821,7 @@ incr backup (update files) ------------------------------------------------------------------------------------------------------------------------------------ INFO: backup start: --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --hardlink --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast INFO: last backup label = [BACKUP-INCR-3], version = [VERSION-1] - INFO: backup file [TEST_PATH]/db/common-2/base/base1.txt (8B, 100%) checksum 9a53d532e27785e681766c98516a5e93f096a501 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/17000 (8B, 100%) checksum 9a53d532e27785e681766c98516a5e93f096a501 INFO: incr backup size = 8B INFO: new backup label = [BACKUP-INCR-4] INFO: backup stop @@ -1680,13 +1889,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-DIFF-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","reference":"[BACKUP-INCR-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-INCR-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-INCR-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1703,6 +1917,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1710,6 +1927,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1745,9 +1963,9 @@ diff backup (updates since last full) INFO: backup start: --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --hardlink --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast --type=diff INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 28%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt (8B, 48%) checksum e324463005236d83e6e54795dbddd20a74533bf3 - INFO: backup file [TEST_PATH]/db/common-2/base/base1.txt (8B, 69%) checksum 9a53d532e27785e681766c98516a5e93f096a501 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 87%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt (8B, 48%) checksum e324463005236d83e6e54795dbddd20a74533bf3 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/17000 (8B, 69%) checksum 9a53d532e27785e681766c98516a5e93f096a501 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 87%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 INFO: backup file [TEST_PATH]/db/common-2/base/base2.txt (5B, 100%) checksum 09b5e31766be1dba1ec27de82f975c1b6eea2a92 INFO: diff backup size = 39B INFO: new backup label = [BACKUP-DIFF-3] @@ -1816,13 +2034,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1839,6 +2062,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1846,6 +2072,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1948,13 +2175,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1971,6 +2203,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1978,6 +2213,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2015,8 +2251,8 @@ diff backup (remove files during backup) INFO: backup start: --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --hardlink --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast --test --test-delay=1 --test-point=manifest-build=y --type=diff INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 35%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt (12B, 61%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 83%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 61%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 83%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 DETAIL: skip file removed by database: [TEST_PATH]/db/common-2/base/base2.txt INFO: diff backup size = 31B INFO: new backup label = [BACKUP-DIFF-4] @@ -2085,11 +2321,16 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2106,6 +2347,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2113,6 +2357,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2149,12 +2394,17 @@ full backup (update file) > [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --no-online --log-level-console=detail --type=full --stanza=db backup ------------------------------------------------------------------------------------------------------------------------------------ INFO: backup start: --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --hardlink --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast --type=full - INFO: backup file [TEST_PATH]/db/common-2/postgresql.conf (21B, 30%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt (12B, 48%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 - INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 64%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common-2/base/base1.txt (9B, 77%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 88%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: backup file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 95%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: backup file [TEST_PATH]/db/common-2/postgresql.conf (21B, 24%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 38%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 + INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 51%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/17000 (9B, 61%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 69%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 75%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: backup file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 81%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + INFO: backup file [TEST_PATH]/db/common-2/base/1/12000 (4B, 86%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: backup file [TEST_PATH]/db/common-2/base/32768/PG_VERSION (3B, 89%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/PG_VERSION (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: backup file [TEST_PATH]/db/common-2/base/1/PG_VERSION (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: backup file [TEST_PATH]/db/common-2/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: backup file [TEST_PATH]/db/common-2/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 INFO: full backup size = 8KB @@ -2223,12 +2473,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2245,6 +2500,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2252,6 +2510,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2294,48 +2553,48 @@ stanza: db full backup: [BACKUP-FULL-2] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 8KB - repository size: 277B, repository backup size: 277B + repository size: 395B, repository backup size: 395B diff backup: [BACKUP-DIFF-2] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 25B - repository size: 362B, repository backup size: 85B + repository size: 480B, repository backup size: 85B backup reference list: [BACKUP-FULL-2] incr backup: [BACKUP-INCR-3] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 13B - repository size: 388B, repository backup size: 53B + repository size: 506B, repository backup size: 53B backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-2] incr backup: [BACKUP-INCR-4] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 8B - repository size: 392B, repository backup size: 28B + repository size: 510B, repository backup size: 28B backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-2], [BACKUP-INCR-3] diff backup: [BACKUP-DIFF-3] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 39B - repository size: 392B, repository backup size: 139B + repository size: 510B, repository backup size: 139B backup reference list: [BACKUP-FULL-2] incr backup: [BACKUP-INCR-5] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 0B - repository size: 392B, repository backup size: 0B + repository size: 510B, repository backup size: 0B backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-3] diff backup: [BACKUP-DIFF-4] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 30B - repository size: 343B, repository backup size: 90B + repository size: 461B, repository backup size: 90B backup reference list: [BACKUP-FULL-2] full backup: [BACKUP-FULL-3] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 8KB - repository size: 372B, repository backup size: 372B + repository size: 490B, repository backup size: 490B info db > [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=warn --stanza=db info --output=json @@ -2693,13 +2952,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"cafac3c59553f2cfde41ce2e62e7662295f108c0","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2716,6 +2980,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2723,6 +2990,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2750,6 +3018,86 @@ db-version="9.3" [db:history] 1={"db-catalog-version":201306121,"db-control-version":937,"db-system-id":6156904820763115222,"db-version":"9.3"} +restore delta, remap (selective restore 16384) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=detail --db-include=16384 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + INFO: restore start: --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-include=16384=1 --delta --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --repo-path=[TEST_PATH]/backrest --stanza=db --tablespace-map=2=[TEST_PATH]/db/tablespace/ts2-2 + INFO: restore backup set [BACKUP-DIFF-5] + INFO: remap tablespace pg_tblspc/2 directory to [TEST_PATH]/db/tablespace/ts2-2 +DETAIL: check [TEST_PATH]/db/common-2 exists +DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists + INFO: remove invalid files/paths/links from [TEST_PATH]/db/tablespace/ts2-2/[TS_PATH-1] + INFO: remove invalid files/paths/links from [TEST_PATH]/db/common-2 +DETAIL: preserve file [TEST_PATH]/db/common-2/recovery.conf +DETAIL: databases for include/exclude (1, 16384, 32768) +DETAIL: database filter: (^pg_data\/base\/32768\/)|(^pg_tblspc/2\/[TS_PATH-1]\/32768\/) +DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 22%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 34%) +DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 46%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 +DETAIL: restore file [TEST_PATH]/db/common-2/base/base2.txt - exists and matches backup (9B, 55%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/17000 - exists and matches backup (9B, 65%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) +DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 77%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 83%) +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/12000 - exists and matches backup (4B, 87%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION - exists and matches backup (3B, 90%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION - exists and matches backup (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION - exists and matches backup (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/PG_VERSION - exists and matches backup (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: wrote [TEST_PATH]/db/common-2/recovery.conf + INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) + INFO: restore file [TEST_PATH]/db/common-2/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 + INFO: restore stop + ++ supplemental file: [TEST_PATH]/db/common-2/recovery.conf +---------------------------------------------------------- +restore_command = '[BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=detail --stanza=db archive-get %f "%p"' + +restore delta, remap (selective restore 32768) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=detail --db-include=32768 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + INFO: restore start: --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-include=32768=1 --delta --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --repo-path=[TEST_PATH]/backrest --stanza=db --tablespace-map=2=[TEST_PATH]/db/tablespace/ts2-2 + INFO: restore backup set [BACKUP-DIFF-5] + INFO: remap tablespace pg_tblspc/2 directory to [TEST_PATH]/db/tablespace/ts2-2 +DETAIL: check [TEST_PATH]/db/common-2 exists +DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists + INFO: remove invalid files/paths/links from [TEST_PATH]/db/tablespace/ts2-2/[TS_PATH-1] + INFO: remove invalid files/paths/links from [TEST_PATH]/db/common-2 +DETAIL: preserve file [TEST_PATH]/db/common-2/recovery.conf +DETAIL: databases for include/exclude (1, 16384, 32768) +DETAIL: database filter: (^pg_data\/base\/16384\/)|(^pg_tblspc/2\/[TS_PATH-1]\/16384\/) +DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 22%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 34%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 +DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 46%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 +DETAIL: restore file [TEST_PATH]/db/common-2/base/base2.txt - exists and matches backup (9B, 55%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/base/16384/17000 (9B, 65%) + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 +DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 77%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 83%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/12000 - exists and matches backup (4B, 87%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION - exists and matches backup (3B, 90%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION - exists and matches backup (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION - exists and matches backup (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/PG_VERSION - exists and matches backup (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: wrote [TEST_PATH]/db/common-2/recovery.conf + INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) + INFO: restore file [TEST_PATH]/db/common-2/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 + INFO: restore stop + ++ supplemental file: [TEST_PATH]/db/common-2/recovery.conf +---------------------------------------------------------- +restore_command = '[BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=detail --stanza=db archive-get %f "%p"' + +restore delta, remap, expect exit 155 (error on invalid id) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=warn --db-include=7777 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + ERROR: [155]: database to include '7777' does not exist + +restore delta, remap, expect exit 156 (error on system id) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=warn --db-include=1 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + ERROR: [156]: system databases (template0, postgres, etc.) are included by default + restore, remap, expect exit 148 (no tablespace remap - error when tablespace dir does not exist) > [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=detail --tablespace-map-all=../../tablespace --stanza=db restore ------------------------------------------------------------------------------------------------------------------------------------ @@ -2771,13 +3119,18 @@ restore (no tablespace remap) INFO: remap tablespace pg_tblspc/2 directory to ../../tablespace/ts2 DETAIL: check [TEST_PATH]/db/common-2/base exists DETAIL: check [TEST_PATH]/db/common-2/tablespace exists - INFO: restore file [TEST_PATH]/db/common-2/base/postgresql.conf (21B, 27%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt (12B, 42%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 - INFO: restore file [TEST_PATH]/db/common-2/base/badchecksum.txt (11B, 57%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: restore file [TEST_PATH]/db/common-2/base/base/base2.txt (9B, 68%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 - INFO: restore file [TEST_PATH]/db/common-2/base/base/base1.txt (9B, 80%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 - INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 89%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: restore file [TEST_PATH]/db/common-2/base/pg_stat/global.stat (5B, 96%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/postgresql.conf (21B, 22%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 34%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 + INFO: restore file [TEST_PATH]/db/common-2/base/badchecksum.txt (11B, 46%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 + INFO: restore file [TEST_PATH]/db/common-2/base/base/base2.txt (9B, 55%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 + INFO: restore file [TEST_PATH]/db/common-2/base/base/16384/17000 (9B, 65%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 + INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: restore file [TEST_PATH]/db/common-2/base/pg_stat/global.stat (5B, 77%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/base/32768/33000 (5B, 83%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + INFO: restore file [TEST_PATH]/db/common-2/base/base/1/12000 (4B, 87%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/base/base/32768/PG_VERSION (3B, 90%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/base/16384/PG_VERSION (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/base/1/PG_VERSION (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: restore file [TEST_PATH]/db/common-2/base/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common-2/base/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -2797,12 +3150,12 @@ stanza: db full backup: [BACKUP-FULL-3] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 8KB - repository size: 372B, repository backup size: 372B + repository size: 490B, repository backup size: 490B diff backup: [BACKUP-DIFF-5] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 9B - repository size: 401B, repository backup size: 29B + repository size: 519B, repository backup size: 29B backup reference list: [BACKUP-FULL-3] stanza: db_empty diff --git a/test/expect/backup-synthetic-005.log b/test/expect/backup-synthetic-005.log index 8a8852b72..7aa707181 100644 --- a/test/expect/backup-synthetic-005.log +++ b/test/expect/backup-synthetic-005.log @@ -45,12 +45,12 @@ full backup DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_stat, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute DEBUG: Backup->process: create temp backup path [TEST_PATH]/backrest/temp/db.tmp @@ -58,25 +58,43 @@ full backup DEBUG: Backup->processManifest(): bCompress = false, bHardLink = false, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = full DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_tblspc, strPathType = backup:tmp DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-1], strDestinationFile = pg_data/postgresql.conf, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/postgresql.conf, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/postgresql.conf (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: backup file [TEST_PATH]/db/common/postgresql.conf (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 21, lManifestSaveSize = 3 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-1], strDestinationFile = pg_data/pg_stat/global.stat, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_stat/global.stat, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: backup file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 5, lManifestSaveSize = 3 - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/base1.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/base1.txt, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/base/base1.txt (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/32768/33000, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/32768/33000, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/32768/33000 (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 5, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/16384/17000, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/16384/17000, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/16384/17000 (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 4, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/1/12000, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/1/12000, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/1/12000 (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 4, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/32768/PG_VERSION, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/32768/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/32768/PG_VERSION (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/16384/PG_VERSION, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/16384/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/16384/PG_VERSION (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/1/PG_VERSION, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/1/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/1/PG_VERSION (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/PG_VERSION, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-1], strDestinationFile = pg_data/global/pg_control, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/global/pg_control, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 - DEBUG: Backup->processManifest=>: lSizeTotal = 8225 + DEBUG: Backup->processManifest=>: lSizeTotal = 8243 INFO: full backup size = 8KB INFO: new backup label = [BACKUP-FULL-1] DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = , lModificationTime = [undef], strDestinationFile = backup.manifest.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = backup.manifest, strSourcePathType = backup:tmp, strUser = [undef] @@ -185,7 +203,12 @@ pg_data/postgresql.conf={"file":"postgresql.conf","path":"../pg_config","type":" [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","size":[SIZE],"timestamp":[TIMESTAMP-2]} @@ -206,6 +229,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -258,12 +284,12 @@ full backup (protocol timeout) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_stat, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute DEBUG: Backup->process: create temp backup path [TEST_PATH]/backrest/temp/db.tmp @@ -271,6 +297,9 @@ full backup (protocol timeout) DEBUG: Backup->processManifest(): bCompress = false, bHardLink = false, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = full DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp @@ -311,12 +340,12 @@ full backup (abort backup - local) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_stat, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute DEBUG: Backup->process: create temp backup path [TEST_PATH]/backrest/temp/db.tmp @@ -324,6 +353,9 @@ full backup (abort backup - local) DEBUG: Backup->processManifest(): bCompress = false, bHardLink = false, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = full DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp @@ -450,12 +482,12 @@ full backup (abort backup - remote) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_stat, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute WARN: aborted backup of same type exists, will be cleaned to remove invalid files and resumed @@ -464,6 +496,9 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_data, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/base, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/1, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/16384, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/32768, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/global, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/pg_clog, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/pg_stat, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp @@ -473,6 +508,9 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: Backup->processManifest(): bCompress = false, bHardLink = false, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = full DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp @@ -522,12 +560,12 @@ full backup (resume) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_stat, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute WARN: aborted backup of same type exists, will be cleaned to remove invalid files and resumed @@ -536,6 +574,9 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_data, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/base, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/1, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/16384, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/32768, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/global, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/pg_clog, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/pg_stat, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp @@ -546,25 +587,43 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: Backup->processManifest(): bCompress = false, bHardLink = false, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = full DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_tblspc, strPathType = backup:tmp DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/postgresql.conf, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 21, strHash = 6721d92c9fcdf4248acff1f9a1377127d9064807 -DETAIL: checksum resumed file [TEST_PATH]/db/common/postgresql.conf (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: checksum resumed file [TEST_PATH]/db/common/postgresql.conf (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/pg_stat/global.stat, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 5, strHash = e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 - DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/base1.txt, strHashType = , strPathType = backup:tmp +DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/32768/33000, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 5, strHash = 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/32768/33000 (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/16384/17000, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 4, strHash = a3b357a3e395e43fcfb19bb13f3c1b5179279593 -DETAIL: checksum resumed file [TEST_PATH]/db/common/base/base1.txt (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/16384/17000 (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/1/12000, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 4, strHash = a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/1/12000 (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/32768/PG_VERSION, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/32768/PG_VERSION (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/16384/PG_VERSION, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/16384/PG_VERSION (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/1/PG_VERSION, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/1/PG_VERSION (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/PG_VERSION, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/global/pg_control, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 8192, strHash = 56fe5780b8dca9705e0c22032a83828860a21235 DETAIL: checksum resumed file [TEST_PATH]/db/common/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 - DEBUG: Backup->processManifest=>: lSizeTotal = 8225 + DEBUG: Backup->processManifest=>: lSizeTotal = 8243 INFO: full backup size = 8KB INFO: new backup label = [BACKUP-FULL-2] DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = , lModificationTime = [undef], strDestinationFile = backup.manifest.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = backup.manifest, strSourcePathType = backup:tmp, strUser = [undef] @@ -673,7 +732,12 @@ pg_data/postgresql.conf={"file":"postgresql.conf","path":"../pg_config","type":" [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","size":[SIZE],"timestamp":[TIMESTAMP-2]} @@ -694,6 +758,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -764,6 +831,9 @@ DETAIL: check [TEST_PATH]/db/common exists DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = deleteme, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute @@ -793,6 +863,9 @@ DETAIL: check [TEST_PATH]/db/pg_config exists DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = deleteme, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute @@ -822,22 +895,54 @@ DETAIL: set mode 0700 on [TEST_PATH]/db/common/base DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postgresql.conf, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: build level 2 paths/links + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/1, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/16384, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/32768, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: build level 3 paths/links DEBUG: Restore->process: restore in main process DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postgresql.conf, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/postgresql.conf, strHashType = , strPathType = db:absolute DEBUG: File->hashSize=>: iSize = 21, strHash = 6721d92c9fcdf4248acff1f9a1377127d9064807 -DETAIL: restore file [TEST_PATH]/db/common/postgresql.conf - exists and matches backup (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: restore file [TEST_PATH]/db/common/postgresql.conf - exists and matches backup (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/pg_stat/global.stat, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/pg_stat/global.stat, strHashType = , strPathType = db:absolute DEBUG: File->hashSize=>: iSize = 5, strHash = e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: restore file [TEST_PATH]/db/common/pg_stat/global.stat - exists and matches backup (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 - DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/base1.txt, strPathType = db:absolute +DETAIL: restore file [TEST_PATH]/db/common/pg_stat/global.stat - exists and matches backup (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/32768/33000, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/32768/33000, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 5, strHash = 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/33000 - exists and matches backup (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/16384/17000, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = , bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = [TEST_PATH]/db/common/base/base1.txt, strDestinationPathType = db:absolute, strGroup = [GROUP-1], strMode = 0600, strSourceFile = [BACKUP-FULL-2]/pg_data/base/base1.txt, strSourcePathType = backup:cluster, strUser = [USER-1] - DEBUG: File->owner(): strFile = [TEST_PATH]/db/common/base/base1.txt.backrest.tmp, strGroup = [GROUP-1], strPathType = absolute, strUser = [USER-1] - INFO: restore file [TEST_PATH]/db/common/base/base1.txt (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = , bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = [TEST_PATH]/db/common/base/16384/17000, strDestinationPathType = db:absolute, strGroup = [GROUP-1], strMode = 0600, strSourceFile = [BACKUP-FULL-2]/pg_data/base/16384/17000, strSourcePathType = backup:cluster, strUser = [USER-1] + DEBUG: File->owner(): strFile = [TEST_PATH]/db/common/base/16384/17000.backrest.tmp, strGroup = [GROUP-1], strPathType = absolute, strUser = [USER-1] + INFO: restore file [TEST_PATH]/db/common/base/16384/17000 (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/1/12000, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/1/12000, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 4, strHash = a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/base/1/12000 - exists and matches backup (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/32768/PG_VERSION, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/32768/PG_VERSION, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/PG_VERSION - exists and matches backup (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/16384/PG_VERSION, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/16384/PG_VERSION, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/16384/PG_VERSION - exists and matches backup (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/1/PG_VERSION, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/1/PG_VERSION, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/1/PG_VERSION - exists and matches backup (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/PG_VERSION, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/PG_VERSION, strHashType = , strPathType = db:absolute @@ -889,9 +994,14 @@ DETAIL: preserve file [TEST_PATH]/db/common/recovery.conf DETAIL: remove link [TEST_PATH]/db/common/postgresql.conf DETAIL: remove link [TEST_PATH]/db/common/pg_stat INFO: cleanup removed 2 links - INFO: restore file [TEST_PATH]/db/common/postgresql.conf (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: restore file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: restore file [TEST_PATH]/db/common/base/base1.txt - exists and matches size 4 and modification time [MODIFICATION-TIME-2] (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common/postgresql.conf (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/33000 - exists and matches size 5 and modification time [MODIFICATION-TIME-2] (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common/base/16384/17000 - exists and matches size 4 and modification time [MODIFICATION-TIME-2] (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/base/1/12000 - exists and matches size 4 and modification time [MODIFICATION-TIME-2] (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/PG_VERSION - exists and matches size 3 and modification time [MODIFICATION-TIME-2] (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/16384/PG_VERSION - exists and matches size 3 and modification time [MODIFICATION-TIME-2] (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/1/PG_VERSION - exists and matches size 3 and modification time [MODIFICATION-TIME-2] (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: restore file [TEST_PATH]/db/common/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -991,25 +1101,30 @@ incr backup (add tablespace 1) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: Manifest->build: found tablespace 1 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 + DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute DEBUG: Backup->process: create temp backup path [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->pathCreate(): bCreateParents = true, bIgnoreExists = false, strMode = <0750>, strPath = [undef], strPathType = backup:tmp DEBUG: Backup->processManifest(): bCompress = false, bHardLink = false, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = incr DEBUG: Backup->processManifest: reference pg_data/PG_VERSION to [BACKUP-FULL-2] - DEBUG: Backup->processManifest: reference pg_data/base/base1.txt to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/1/12000 to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/1/PG_VERSION to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/16384/17000 to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/16384/PG_VERSION to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/32768/33000 to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/32768/PG_VERSION to [BACKUP-FULL-2] DEBUG: Backup->processManifest: reference pg_data/global/pg_control to [BACKUP-FULL-2] DEBUG: Backup->processManifest: reference pg_data/pg_stat/global.stat to [BACKUP-FULL-2] DEBUG: Backup->processManifest: reference pg_data/postgresql.conf to [BACKUP-FULL-2] DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/badchecksum.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/badchecksum.txt, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 61%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/1/[TS_PATH-1]/tablespace1.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f DEBUG: Backup->processManifest=>: lSizeTotal = 18 INFO: incr backup size = 18B INFO: new backup label = [BACKUP-INCR-1] @@ -1124,11 +1239,16 @@ pg_tblspc/1={"path":"[TEST_PATH]/db/tablespace/ts1","tablespace-id":"1","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1145,6 +1265,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1152,6 +1275,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} [target:path:default] group="postgres" @@ -1210,14 +1334,14 @@ incr backup (resume and add tablespace 2) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: Manifest->build: found tablespace 1 DEBUG: Manifest->build: found tablespace 2 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 + DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/2, strParentPath = [TEST_PATH]/db/common/pg_tblspc/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts2 + DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/2, strParentPath = [TEST_PATH]/db/common/pg_tblspc/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts2 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/tablespace/ts2, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute WARN: aborted backup of same type exists, will be cleaned to remove invalid files and resumed @@ -1228,10 +1352,16 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_tblspc/1, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_tblspc/1/[TS_PATH-1], strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 4, oManifestHashRef = [hash], strPathFileOp = pg_tblspc/1/[TS_PATH-1]/16384, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: Backup->fileNotInManifest=>: stryFile = () DEBUG: Backup->processManifest(): bCompress = false, bHardLink = false, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = incr DEBUG: Backup->processManifest: reference pg_data/PG_VERSION to [BACKUP-FULL-2] - DEBUG: Backup->processManifest: reference pg_data/base/base1.txt to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/1/12000 to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/1/PG_VERSION to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/16384/17000 to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/16384/PG_VERSION to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/32768/33000 to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/32768/PG_VERSION to [BACKUP-FULL-2] DEBUG: Backup->processManifest: reference pg_data/global/pg_control to [BACKUP-FULL-2] DEBUG: Backup->processManifest: reference pg_data/pg_stat/global.stat to [BACKUP-FULL-2] DEBUG: Backup->processManifest: reference pg_data/postgresql.conf to [BACKUP-FULL-2] @@ -1240,11 +1370,11 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp WARN: resumed backup file pg_data/badchecksum.txt should have checksum bogus but actually has checksum f927212cd08d11a42a666b2f04235398e9ceeb51. The file will be recopied and backup will continue but this may be an issue unless the backup temp path is known to be corrupted. DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/badchecksum.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/badchecksum.txt, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 44%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/2/[TS_PATH-1]/tablespace2.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - DEBUG: File->hashSize(): bCompressed = false, strFile = pg_tblspc/1/[TS_PATH-1]/tablespace1.txt, strHashType = , strPathType = backup:tmp + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 7, strHash = d85de07d6421d90aa9191c11c889bfde43680f0f -DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f +DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f DEBUG: Backup->processManifest=>: lSizeTotal = 25 INFO: incr backup size = 25B INFO: new backup label = [BACKUP-INCR-2] @@ -1360,12 +1490,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2","tablespace-id":"2","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1383,6 +1518,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1390,8 +1528,10 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1427,8 +1567,8 @@ diff backup (cannot resume - new diff) INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] WARN: aborted backup exists, but cannot be resumed (new backup-type 'diff' does not match aborted backup-type 'incr') - will be dropped and recreated INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 44%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f INFO: diff backup size = 25B INFO: new backup label = [BACKUP-DIFF-1] INFO: backup stop @@ -1515,12 +1655,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2","tablespace-id":"2","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1538,6 +1683,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1545,8 +1693,10 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1582,8 +1732,8 @@ diff backup (cannot resume - disabled) INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] WARN: aborted backup exists, but cannot be resumed (resume is disabled) - will be dropped and recreated INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 44%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f INFO: diff backup size = 25B INFO: new backup label = [BACKUP-DIFF-2] INFO: backup stop @@ -1670,12 +1820,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2","tablespace-id":"2","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1693,6 +1848,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1700,8 +1858,10 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1765,12 +1925,17 @@ restore, backup '[BACKUP-DIFF-2]', remap (remap all paths) DETAIL: check [TEST_PATH]/db/common-2 exists DETAIL: check [TEST_PATH]/db/tablespace/ts1-2 exists DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists - INFO: restore file [TEST_PATH]/db/common-2/postgresql.conf (21B, 36%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: restore file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 55%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 67%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 79%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f - INFO: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 87%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 - INFO: restore file [TEST_PATH]/db/common-2/base/base1.txt (4B, 94%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/postgresql.conf (21B, 27%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 42%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 51%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 60%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + INFO: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 67%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 73%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + INFO: restore file [TEST_PATH]/db/common-2/base/16384/17000 (4B, 78%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/base/1/12000 (4B, 84%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION (3B, 92%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: restore file [TEST_PATH]/db/common-2/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common-2/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -1796,12 +1961,17 @@ DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists INFO: remove invalid files/paths/links from [TEST_PATH]/db/tablespace/ts1-2/[TS_PATH-1] INFO: remove invalid files/paths/links from [TEST_PATH]/db/common-2 DETAIL: preserve file [TEST_PATH]/db/common-2/recovery.conf -DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 36%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 -DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 55%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 -DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt - exists and matches backup (7B, 67%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 -DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt - exists and matches backup (7B, 79%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f -DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 87%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: restore file [TEST_PATH]/db/common-2/base/base1.txt - exists and matches backup (4B, 94%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 27%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 42%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 +DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt - exists and matches backup (7B, 51%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 +DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt - exists and matches backup (7B, 60%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f +DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 67%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/33000 - exists and matches backup (5B, 73%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/17000 - exists and matches backup (4B, 78%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/12000 - exists and matches backup (4B, 84%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION - exists and matches backup (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION - exists and matches backup (3B, 92%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION - exists and matches backup (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DETAIL: restore file [TEST_PATH]/db/common-2/PG_VERSION - exists and matches backup (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common-2/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -1817,7 +1987,7 @@ incr backup (add files and remove tablespace 2) ------------------------------------------------------------------------------------------------------------------------------------ INFO: backup start: --cmd-remote=[BACKREST_BIN] --no-compress --config=[TEST_PATH]/backrest/pgbackrest.conf --config-remote=[TEST_PATH]/db/pgbackrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast INFO: last backup label = [BACKUP-DIFF-2], version = [VERSION-1] - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt (8B, 61%) checksum e324463005236d83e6e54795dbddd20a74533bf3 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt (8B, 61%) checksum e324463005236d83e6e54795dbddd20a74533bf3 INFO: backup file [TEST_PATH]/db/common-2/base/base2.txt (5B, 100%) checksum 09b5e31766be1dba1ec27de82f975c1b6eea2a92 INFO: incr backup size = 13B INFO: new backup label = [BACKUP-INCR-3] @@ -1908,13 +2078,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-DIFF-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1931,6 +2106,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1938,6 +2116,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1974,7 +2153,7 @@ incr backup (update files) WARN: backup [BACKUP-DIFF-2] found in repository added to backup.info WARN: backup [BACKUP-INCR-3] found in repository added to backup.info INFO: last backup label = [BACKUP-INCR-3], version = [VERSION-1] - INFO: backup file [TEST_PATH]/db/common-2/base/base1.txt (8B, 100%) checksum 9a53d532e27785e681766c98516a5e93f096a501 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/17000 (8B, 100%) checksum 9a53d532e27785e681766c98516a5e93f096a501 INFO: incr backup size = 8B INFO: new backup label = [BACKUP-INCR-4] INFO: backup stop @@ -2064,13 +2243,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-DIFF-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","reference":"[BACKUP-INCR-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-INCR-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-INCR-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2087,6 +2271,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2094,6 +2281,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2129,9 +2317,9 @@ diff backup (updates since last full) INFO: backup start: --cmd-remote=[BACKREST_BIN] --no-compress --config=[TEST_PATH]/backrest/pgbackrest.conf --config-remote=[TEST_PATH]/db/pgbackrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast --type=diff INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 28%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt (8B, 48%) checksum e324463005236d83e6e54795dbddd20a74533bf3 - INFO: backup file [TEST_PATH]/db/common-2/base/base1.txt (8B, 69%) checksum 9a53d532e27785e681766c98516a5e93f096a501 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 87%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt (8B, 48%) checksum e324463005236d83e6e54795dbddd20a74533bf3 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/17000 (8B, 69%) checksum 9a53d532e27785e681766c98516a5e93f096a501 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 87%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 INFO: backup file [TEST_PATH]/db/common-2/base/base2.txt (5B, 100%) checksum 09b5e31766be1dba1ec27de82f975c1b6eea2a92 INFO: diff backup size = 39B INFO: new backup label = [BACKUP-DIFF-3] @@ -2222,13 +2410,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2245,6 +2438,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2252,6 +2448,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2376,13 +2573,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2399,6 +2601,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2406,6 +2611,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2443,8 +2649,8 @@ diff backup (remove files during backup) INFO: backup start: --cmd-remote=[BACKREST_BIN] --no-compress --config=[TEST_PATH]/backrest/pgbackrest.conf --config-remote=[TEST_PATH]/db/pgbackrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast --test --test-delay=1 --test-point=manifest-build=y --type=diff INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 35%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt (12B, 61%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 83%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 61%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 83%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 DETAIL: skip file removed by database: [TEST_PATH]/db/common-2/base/base2.txt INFO: diff backup size = 31B INFO: new backup label = [BACKUP-DIFF-4] @@ -2535,11 +2741,16 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2556,6 +2767,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2563,6 +2777,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2599,12 +2814,17 @@ full backup (update file) > [BACKREST_BIN] --config=[TEST_PATH]/backrest/pgbackrest.conf --no-online --log-level-console=detail --type=full --stanza=db backup ------------------------------------------------------------------------------------------------------------------------------------ INFO: backup start: --cmd-remote=[BACKREST_BIN] --no-compress --config=[TEST_PATH]/backrest/pgbackrest.conf --config-remote=[TEST_PATH]/db/pgbackrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast --type=full - INFO: backup file [TEST_PATH]/db/common-2/postgresql.conf (21B, 30%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt (12B, 48%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 - INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 64%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common-2/base/base1.txt (9B, 77%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 88%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: backup file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 95%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: backup file [TEST_PATH]/db/common-2/postgresql.conf (21B, 24%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 38%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 + INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 51%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/17000 (9B, 61%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 69%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 75%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: backup file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 81%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + INFO: backup file [TEST_PATH]/db/common-2/base/1/12000 (4B, 86%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: backup file [TEST_PATH]/db/common-2/base/32768/PG_VERSION (3B, 89%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/PG_VERSION (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: backup file [TEST_PATH]/db/common-2/base/1/PG_VERSION (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: backup file [TEST_PATH]/db/common-2/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: backup file [TEST_PATH]/db/common-2/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 INFO: full backup size = 8KB @@ -2695,12 +2915,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2717,6 +2942,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2724,6 +2952,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -3180,13 +3409,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"cafac3c59553f2cfde41ce2e62e7662295f108c0","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -3203,6 +3437,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -3210,6 +3447,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -3244,6 +3482,86 @@ db-version="9.3" [db:history] 1={"db-catalog-version":201306121,"db-control-version":937,"db-system-id":6156904820763115222,"db-version":"9.3"} +restore delta, remap (selective restore 16384) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=detail --db-include=16384 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + INFO: restore start: --backup-host=127.0.0.1 --backup-user=backrest --cmd-remote=[BACKREST_BIN] --no-compress --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-include=16384=1 --delta --lock-path=[TEST_PATH]/local/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/local/log --repo-path=[TEST_PATH]/backrest --stanza=db --tablespace-map=2=[TEST_PATH]/db/tablespace/ts2-2 + INFO: restore backup set [BACKUP-DIFF-5] + INFO: remap tablespace pg_tblspc/2 directory to [TEST_PATH]/db/tablespace/ts2-2 +DETAIL: check [TEST_PATH]/db/common-2 exists +DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists + INFO: remove invalid files/paths/links from [TEST_PATH]/db/tablespace/ts2-2/[TS_PATH-1] + INFO: remove invalid files/paths/links from [TEST_PATH]/db/common-2 +DETAIL: preserve file [TEST_PATH]/db/common-2/recovery.conf +DETAIL: databases for include/exclude (1, 16384, 32768) +DETAIL: database filter: (^pg_data\/base\/32768\/)|(^pg_tblspc/2\/[TS_PATH-1]\/32768\/) +DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 22%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 34%) +DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 46%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 +DETAIL: restore file [TEST_PATH]/db/common-2/base/base2.txt - exists and matches backup (9B, 55%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/17000 - exists and matches backup (9B, 65%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) +DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 77%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 83%) +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/12000 - exists and matches backup (4B, 87%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION - exists and matches backup (3B, 90%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION - exists and matches backup (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION - exists and matches backup (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/PG_VERSION - exists and matches backup (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: wrote [TEST_PATH]/db/common-2/recovery.conf + INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) + INFO: restore file [TEST_PATH]/db/common-2/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 + INFO: restore stop + ++ supplemental file: [TEST_PATH]/db/common-2/recovery.conf +---------------------------------------------------------- +restore_command = '[BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=detail --stanza=db archive-get %f "%p"' + +restore delta, remap (selective restore 32768) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=detail --db-include=32768 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + INFO: restore start: --backup-host=127.0.0.1 --backup-user=backrest --cmd-remote=[BACKREST_BIN] --no-compress --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-include=32768=1 --delta --lock-path=[TEST_PATH]/local/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/local/log --repo-path=[TEST_PATH]/backrest --stanza=db --tablespace-map=2=[TEST_PATH]/db/tablespace/ts2-2 + INFO: restore backup set [BACKUP-DIFF-5] + INFO: remap tablespace pg_tblspc/2 directory to [TEST_PATH]/db/tablespace/ts2-2 +DETAIL: check [TEST_PATH]/db/common-2 exists +DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists + INFO: remove invalid files/paths/links from [TEST_PATH]/db/tablespace/ts2-2/[TS_PATH-1] + INFO: remove invalid files/paths/links from [TEST_PATH]/db/common-2 +DETAIL: preserve file [TEST_PATH]/db/common-2/recovery.conf +DETAIL: databases for include/exclude (1, 16384, 32768) +DETAIL: database filter: (^pg_data\/base\/16384\/)|(^pg_tblspc/2\/[TS_PATH-1]\/16384\/) +DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 22%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 34%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 +DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 46%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 +DETAIL: restore file [TEST_PATH]/db/common-2/base/base2.txt - exists and matches backup (9B, 55%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/base/16384/17000 (9B, 65%) + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 +DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 77%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 83%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/12000 - exists and matches backup (4B, 87%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION - exists and matches backup (3B, 90%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION - exists and matches backup (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION - exists and matches backup (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/PG_VERSION - exists and matches backup (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: wrote [TEST_PATH]/db/common-2/recovery.conf + INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) + INFO: restore file [TEST_PATH]/db/common-2/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 + INFO: restore stop + ++ supplemental file: [TEST_PATH]/db/common-2/recovery.conf +---------------------------------------------------------- +restore_command = '[BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=detail --stanza=db archive-get %f "%p"' + +restore delta, remap, expect exit 155 (error on invalid id) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=warn --db-include=7777 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + ERROR: [155]: database to include '7777' does not exist + +restore delta, remap, expect exit 156 (error on system id) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=warn --db-include=1 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + ERROR: [156]: system databases (template0, postgres, etc.) are included by default + restore, remap, expect exit 148 (no tablespace remap - error when tablespace dir does not exist) > [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=detail --tablespace-map-all=../../tablespace --stanza=db restore ------------------------------------------------------------------------------------------------------------------------------------ @@ -3265,13 +3583,18 @@ restore (no tablespace remap) INFO: remap tablespace pg_tblspc/2 directory to ../../tablespace/ts2 DETAIL: check [TEST_PATH]/db/common-2/base exists DETAIL: check [TEST_PATH]/db/common-2/tablespace exists - INFO: restore file [TEST_PATH]/db/common-2/base/postgresql.conf (21B, 27%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt (12B, 42%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 - INFO: restore file [TEST_PATH]/db/common-2/base/badchecksum.txt (11B, 57%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: restore file [TEST_PATH]/db/common-2/base/base/base2.txt (9B, 68%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 - INFO: restore file [TEST_PATH]/db/common-2/base/base/base1.txt (9B, 80%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 - INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 89%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: restore file [TEST_PATH]/db/common-2/base/pg_stat/global.stat (5B, 96%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/postgresql.conf (21B, 22%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 34%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 + INFO: restore file [TEST_PATH]/db/common-2/base/badchecksum.txt (11B, 46%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 + INFO: restore file [TEST_PATH]/db/common-2/base/base/base2.txt (9B, 55%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 + INFO: restore file [TEST_PATH]/db/common-2/base/base/16384/17000 (9B, 65%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 + INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: restore file [TEST_PATH]/db/common-2/base/pg_stat/global.stat (5B, 77%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/base/32768/33000 (5B, 83%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + INFO: restore file [TEST_PATH]/db/common-2/base/base/1/12000 (4B, 87%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/base/base/32768/PG_VERSION (3B, 90%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/base/16384/PG_VERSION (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/base/1/PG_VERSION (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: restore file [TEST_PATH]/db/common-2/base/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common-2/base/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) diff --git a/test/expect/backup-synthetic-006.log b/test/expect/backup-synthetic-006.log index 8af38b9a3..3c3bbc9b8 100644 --- a/test/expect/backup-synthetic-006.log +++ b/test/expect/backup-synthetic-006.log @@ -45,12 +45,12 @@ full backup DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_stat, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute DEBUG: Backup->process: create temp backup path [TEST_PATH]/backrest/temp/db.tmp @@ -58,25 +58,43 @@ full backup DEBUG: Backup->processManifest(): bCompress = false, bHardLink = true, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = full DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_tblspc, strPathType = backup:tmp DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-1], strDestinationFile = pg_data/postgresql.conf, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/postgresql.conf, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/postgresql.conf (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: backup file [TEST_PATH]/db/common/postgresql.conf (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 21, lManifestSaveSize = 3 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-1], strDestinationFile = pg_data/pg_stat/global.stat, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_stat/global.stat, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: backup file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 5, lManifestSaveSize = 3 - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/base1.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/base1.txt, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/base/base1.txt (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/32768/33000, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/32768/33000, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/32768/33000 (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 5, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/16384/17000, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/16384/17000, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/16384/17000 (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 4, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/1/12000, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/1/12000, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/1/12000 (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 4, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/32768/PG_VERSION, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/32768/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/32768/PG_VERSION (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/16384/PG_VERSION, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/16384/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/16384/PG_VERSION (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/1/PG_VERSION, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/1/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/1/PG_VERSION (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/PG_VERSION, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-1], strDestinationFile = pg_data/global/pg_control, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/global/pg_control, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 - DEBUG: Backup->processManifest=>: lSizeTotal = 8225 + DEBUG: Backup->processManifest=>: lSizeTotal = 8243 INFO: full backup size = 8KB INFO: new backup label = [BACKUP-FULL-1] DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = , lModificationTime = [undef], strDestinationFile = backup.manifest.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = backup.manifest, strSourcePathType = backup:tmp, strUser = [undef] @@ -186,7 +204,12 @@ pg_data/postgresql.conf={"file":"postgresql.conf","path":"../pg_config","type":" [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","size":[SIZE],"timestamp":[TIMESTAMP-2]} @@ -207,6 +230,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -259,12 +285,12 @@ full backup (resume) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_stat, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute WARN: aborted backup of same type exists, will be cleaned to remove invalid files and resumed @@ -273,6 +299,9 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_data, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/base, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/1, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/16384, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/32768, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/global, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/pg_clog, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/pg_stat, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp @@ -283,25 +312,43 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: Backup->processManifest(): bCompress = false, bHardLink = true, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = full DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_tblspc, strPathType = backup:tmp DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/postgresql.conf, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 21, strHash = 6721d92c9fcdf4248acff1f9a1377127d9064807 -DETAIL: checksum resumed file [TEST_PATH]/db/common/postgresql.conf (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: checksum resumed file [TEST_PATH]/db/common/postgresql.conf (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/pg_stat/global.stat, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 5, strHash = e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 - DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/base1.txt, strHashType = , strPathType = backup:tmp +DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/32768/33000, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 5, strHash = 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/32768/33000 (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/16384/17000, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 4, strHash = a3b357a3e395e43fcfb19bb13f3c1b5179279593 -DETAIL: checksum resumed file [TEST_PATH]/db/common/base/base1.txt (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/16384/17000 (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/1/12000, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 4, strHash = a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/1/12000 (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/32768/PG_VERSION, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/32768/PG_VERSION (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/16384/PG_VERSION, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/16384/PG_VERSION (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/base/1/PG_VERSION, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/1/PG_VERSION (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/PG_VERSION, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: File->hashSize(): bCompressed = false, strFile = pg_data/global/pg_control, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 8192, strHash = 56fe5780b8dca9705e0c22032a83828860a21235 DETAIL: checksum resumed file [TEST_PATH]/db/common/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 - DEBUG: Backup->processManifest=>: lSizeTotal = 8225 + DEBUG: Backup->processManifest=>: lSizeTotal = 8243 INFO: full backup size = 8KB INFO: new backup label = [BACKUP-FULL-2] DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = , lModificationTime = [undef], strDestinationFile = backup.manifest.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = backup.manifest, strSourcePathType = backup:tmp, strUser = [undef] @@ -411,7 +458,12 @@ pg_data/postgresql.conf={"file":"postgresql.conf","path":"../pg_config","type":" [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","size":[SIZE],"timestamp":[TIMESTAMP-2]} @@ -432,6 +484,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -495,6 +550,9 @@ DETAIL: check [TEST_PATH]/db/common exists DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = deleteme, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute @@ -524,6 +582,9 @@ DETAIL: check [TEST_PATH]/db/pg_config exists DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = deleteme, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute @@ -553,22 +614,54 @@ DETAIL: set mode 0700 on [TEST_PATH]/db/common/base DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postgresql.conf, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: build level 2 paths/links + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/1, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/16384, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/32768, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: build level 3 paths/links DEBUG: Restore->process: restore in main process DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postgresql.conf, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/postgresql.conf, strHashType = , strPathType = db:absolute DEBUG: File->hashSize=>: iSize = 21, strHash = 6721d92c9fcdf4248acff1f9a1377127d9064807 -DETAIL: restore file [TEST_PATH]/db/common/postgresql.conf - exists and matches backup (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: restore file [TEST_PATH]/db/common/postgresql.conf - exists and matches backup (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/pg_stat/global.stat, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/pg_stat/global.stat, strHashType = , strPathType = db:absolute DEBUG: File->hashSize=>: iSize = 5, strHash = e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: restore file [TEST_PATH]/db/common/pg_stat/global.stat - exists and matches backup (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 - DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/base1.txt, strPathType = db:absolute +DETAIL: restore file [TEST_PATH]/db/common/pg_stat/global.stat - exists and matches backup (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/32768/33000, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/32768/33000, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 5, strHash = 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/33000 - exists and matches backup (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/16384/17000, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = , bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = [TEST_PATH]/db/common/base/base1.txt, strDestinationPathType = db:absolute, strGroup = [GROUP-1], strMode = 0600, strSourceFile = [BACKUP-FULL-2]/pg_data/base/base1.txt, strSourcePathType = backup:cluster, strUser = [USER-1] - DEBUG: File->owner(): strFile = [TEST_PATH]/db/common/base/base1.txt.backrest.tmp, strGroup = [GROUP-1], strPathType = absolute, strUser = [USER-1] - INFO: restore file [TEST_PATH]/db/common/base/base1.txt (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = , bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = [TEST_PATH]/db/common/base/16384/17000, strDestinationPathType = db:absolute, strGroup = [GROUP-1], strMode = 0600, strSourceFile = [BACKUP-FULL-2]/pg_data/base/16384/17000, strSourcePathType = backup:cluster, strUser = [USER-1] + DEBUG: File->owner(): strFile = [TEST_PATH]/db/common/base/16384/17000.backrest.tmp, strGroup = [GROUP-1], strPathType = absolute, strUser = [USER-1] + INFO: restore file [TEST_PATH]/db/common/base/16384/17000 (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/1/12000, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/1/12000, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 4, strHash = a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/base/1/12000 - exists and matches backup (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/32768/PG_VERSION, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/32768/PG_VERSION, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/PG_VERSION - exists and matches backup (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/16384/PG_VERSION, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/16384/PG_VERSION, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/16384/PG_VERSION - exists and matches backup (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/1/PG_VERSION, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/1/PG_VERSION, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/1/PG_VERSION - exists and matches backup (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/PG_VERSION, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/PG_VERSION, strHashType = , strPathType = db:absolute @@ -620,9 +713,14 @@ DETAIL: preserve file [TEST_PATH]/db/common/recovery.conf DETAIL: remove link [TEST_PATH]/db/common/postgresql.conf DETAIL: remove link [TEST_PATH]/db/common/pg_stat INFO: cleanup removed 2 links - INFO: restore file [TEST_PATH]/db/common/postgresql.conf (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: restore file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: restore file [TEST_PATH]/db/common/base/base1.txt - exists and matches size 4 and modification time [MODIFICATION-TIME-2] (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common/postgresql.conf (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/33000 - exists and matches size 5 and modification time [MODIFICATION-TIME-2] (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common/base/16384/17000 - exists and matches size 4 and modification time [MODIFICATION-TIME-2] (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/base/1/12000 - exists and matches size 4 and modification time [MODIFICATION-TIME-2] (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/PG_VERSION - exists and matches size 3 and modification time [MODIFICATION-TIME-2] (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/16384/PG_VERSION - exists and matches size 3 and modification time [MODIFICATION-TIME-2] (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/1/PG_VERSION - exists and matches size 3 and modification time [MODIFICATION-TIME-2] (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: restore file [TEST_PATH]/db/common/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -722,11 +820,11 @@ incr backup (add tablespace 1) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: Manifest->build: found tablespace 1 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 + DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute DEBUG: Backup->process: create temp backup path [TEST_PATH]/backrest/temp/db.tmp @@ -734,6 +832,9 @@ incr backup (add tablespace 1) DEBUG: Backup->processManifest(): bCompress = false, bHardLink = true, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = incr DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp @@ -741,10 +842,21 @@ incr backup (add tablespace 1) DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/1, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/1/[TS_PATH-1], strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/1/[TS_PATH-1]/16384, strPathType = backup:tmp DEBUG: Backup->processManifest: hardlink pg_data/PG_VERSION to [BACKUP-FULL-2] DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/PG_VERSION, strSourcePathType = backup:cluster - DEBUG: Backup->processManifest: hardlink pg_data/base/base1.txt to [BACKUP-FULL-2] - DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/base1.txt, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/base1.txt, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/1/12000 to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/1/12000, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/1/12000, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/1/PG_VERSION to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/1/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/1/PG_VERSION, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/16384/17000 to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/16384/17000, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/16384/17000, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/16384/PG_VERSION to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/16384/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/16384/PG_VERSION, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/32768/33000 to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/32768/33000, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/32768/33000, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/32768/PG_VERSION to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/32768/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/32768/PG_VERSION, strSourcePathType = backup:cluster DEBUG: Backup->processManifest: hardlink pg_data/global/pg_control to [BACKUP-FULL-2] DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/global/pg_control, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/global/pg_control, strSourcePathType = backup:cluster DEBUG: Backup->processManifest: hardlink pg_data/pg_stat/global.stat to [BACKUP-FULL-2] @@ -753,8 +865,8 @@ incr backup (add tablespace 1) DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/postgresql.conf, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/postgresql.conf, strSourcePathType = backup:cluster DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/badchecksum.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/badchecksum.txt, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 61%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/1/[TS_PATH-1]/tablespace1.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f DEBUG: Backup->processManifest=>: lSizeTotal = 18 INFO: incr backup size = 18B INFO: new backup label = [BACKUP-INCR-1] @@ -870,11 +982,16 @@ pg_tblspc/1={"path":"[TEST_PATH]/db/tablespace/ts1","tablespace-id":"1","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -891,6 +1008,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -898,6 +1018,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} [target:path:default] group="postgres" @@ -956,14 +1077,14 @@ incr backup (resume and add tablespace 2) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: Manifest->build: found tablespace 1 DEBUG: Manifest->build: found tablespace 2 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 + DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/2, strParentPath = [TEST_PATH]/db/common/pg_tblspc/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts2 + DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/2, strParentPath = [TEST_PATH]/db/common/pg_tblspc/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts2 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/tablespace/ts2, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute WARN: aborted backup of same type exists, will be cleaned to remove invalid files and resumed @@ -972,6 +1093,9 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_data, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/base, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/1, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/16384, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/32768, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/global, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/pg_clog, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/pg_stat, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp @@ -979,15 +1103,24 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_tblspc/1, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_tblspc/1/[TS_PATH-1], strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp - DEBUG: Backup->fileNotInManifest=>: stryFile = (pg_data/PG_VERSION, pg_data/base/base1.txt, pg_data/global/pg_control, pg_data/pg_stat/global.stat, pg_data/postgresql.conf) + DEBUG: File->manifestRecurse(): iDepth = 4, oManifestHashRef = [hash], strPathFileOp = pg_tblspc/1/[TS_PATH-1]/16384, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: Backup->fileNotInManifest=>: stryFile = (pg_data/PG_VERSION, pg_data/base/1/12000, pg_data/base/1/PG_VERSION, pg_data/base/16384/17000, pg_data/base/16384/PG_VERSION, pg_data/base/32768/33000, pg_data/base/32768/PG_VERSION, pg_data/global/pg_control, pg_data/pg_stat/global.stat, pg_data/postgresql.conf) DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/postgresql.conf DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/pg_stat/global.stat DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/global/pg_control - DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/base1.txt + DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/32768/PG_VERSION + DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/32768/33000 + DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/16384/PG_VERSION + DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/16384/17000 + DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/1/PG_VERSION + DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/1/12000 DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/PG_VERSION DEBUG: Backup->processManifest(): bCompress = false, bHardLink = true, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = incr DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp @@ -995,12 +1128,24 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/1, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/1/[TS_PATH-1], strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/1/[TS_PATH-1]/16384, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/2, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/2/[TS_PATH-1], strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/2/[TS_PATH-1]/32768, strPathType = backup:tmp DEBUG: Backup->processManifest: hardlink pg_data/PG_VERSION to [BACKUP-FULL-2] DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/PG_VERSION, strSourcePathType = backup:cluster - DEBUG: Backup->processManifest: hardlink pg_data/base/base1.txt to [BACKUP-FULL-2] - DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/base1.txt, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/base1.txt, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/1/12000 to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/1/12000, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/1/12000, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/1/PG_VERSION to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/1/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/1/PG_VERSION, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/16384/17000 to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/16384/17000, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/16384/17000, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/16384/PG_VERSION to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/16384/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/16384/PG_VERSION, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/32768/33000 to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/32768/33000, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/32768/33000, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/32768/PG_VERSION to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/32768/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/32768/PG_VERSION, strSourcePathType = backup:cluster DEBUG: Backup->processManifest: hardlink pg_data/global/pg_control to [BACKUP-FULL-2] DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/global/pg_control, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/global/pg_control, strSourcePathType = backup:cluster DEBUG: Backup->processManifest: hardlink pg_data/pg_stat/global.stat to [BACKUP-FULL-2] @@ -1012,11 +1157,11 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp WARN: resumed backup file pg_data/badchecksum.txt should have checksum bogus but actually has checksum f927212cd08d11a42a666b2f04235398e9ceeb51. The file will be recopied and backup will continue but this may be an issue unless the backup temp path is known to be corrupted. DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/badchecksum.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/badchecksum.txt, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 44%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/2/[TS_PATH-1]/tablespace2.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - DEBUG: File->hashSize(): bCompressed = false, strFile = pg_tblspc/1/[TS_PATH-1]/tablespace1.txt, strHashType = , strPathType = backup:tmp + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = false, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + DEBUG: File->hashSize(): bCompressed = false, strFile = pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 7, strHash = d85de07d6421d90aa9191c11c889bfde43680f0f -DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f +DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f DEBUG: Backup->processManifest=>: lSizeTotal = 25 INFO: incr backup size = 25B INFO: new backup label = [BACKUP-INCR-2] @@ -1133,12 +1278,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2","tablespace-id":"2","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1156,6 +1306,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1163,8 +1316,10 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1200,8 +1355,8 @@ diff backup (cannot resume - new diff) INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] WARN: aborted backup exists, but cannot be resumed (new backup-type 'diff' does not match aborted backup-type 'incr') - will be dropped and recreated INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 44%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f INFO: diff backup size = 25B INFO: new backup label = [BACKUP-DIFF-1] INFO: backup stop @@ -1289,12 +1444,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2","tablespace-id":"2","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1312,6 +1472,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1319,8 +1482,10 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1356,8 +1521,8 @@ diff backup (cannot resume - disabled) INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] WARN: aborted backup exists, but cannot be resumed (resume is disabled) - will be dropped and recreated INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 44%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f INFO: diff backup size = 25B INFO: new backup label = [BACKUP-DIFF-2] INFO: backup stop @@ -1445,12 +1610,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2","tablespace-id":"2","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1468,6 +1638,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1475,8 +1648,10 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1540,12 +1715,17 @@ restore, backup '[BACKUP-DIFF-2]', remap (remap all paths) DETAIL: check [TEST_PATH]/db/common-2 exists DETAIL: check [TEST_PATH]/db/tablespace/ts1-2 exists DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists - INFO: restore file [TEST_PATH]/db/common-2/postgresql.conf (21B, 36%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: restore file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 55%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 67%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 79%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f - INFO: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 87%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 - INFO: restore file [TEST_PATH]/db/common-2/base/base1.txt (4B, 94%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/postgresql.conf (21B, 27%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 42%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 51%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 60%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + INFO: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 67%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 73%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + INFO: restore file [TEST_PATH]/db/common-2/base/16384/17000 (4B, 78%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/base/1/12000 (4B, 84%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION (3B, 92%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: restore file [TEST_PATH]/db/common-2/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common-2/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -1571,12 +1751,17 @@ DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists INFO: remove invalid files/paths/links from [TEST_PATH]/db/tablespace/ts1-2/[TS_PATH-1] INFO: remove invalid files/paths/links from [TEST_PATH]/db/common-2 DETAIL: preserve file [TEST_PATH]/db/common-2/recovery.conf -DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 36%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 -DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 55%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 -DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt - exists and matches backup (7B, 67%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 -DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt - exists and matches backup (7B, 79%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f -DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 87%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: restore file [TEST_PATH]/db/common-2/base/base1.txt - exists and matches backup (4B, 94%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 27%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 42%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 +DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt - exists and matches backup (7B, 51%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 +DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt - exists and matches backup (7B, 60%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f +DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 67%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/33000 - exists and matches backup (5B, 73%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/17000 - exists and matches backup (4B, 78%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/12000 - exists and matches backup (4B, 84%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION - exists and matches backup (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION - exists and matches backup (3B, 92%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION - exists and matches backup (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DETAIL: restore file [TEST_PATH]/db/common-2/PG_VERSION - exists and matches backup (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common-2/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -1592,7 +1777,7 @@ incr backup (add files and remove tablespace 2) ------------------------------------------------------------------------------------------------------------------------------------ INFO: backup start: --cmd-remote=[BACKREST_BIN] --no-compress --config=[TEST_PATH]/backrest/pgbackrest.conf --config-remote=[TEST_PATH]/db/pgbackrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --hardlink --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast INFO: last backup label = [BACKUP-DIFF-2], version = [VERSION-1] - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt (8B, 61%) checksum e324463005236d83e6e54795dbddd20a74533bf3 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt (8B, 61%) checksum e324463005236d83e6e54795dbddd20a74533bf3 INFO: backup file [TEST_PATH]/db/common-2/base/base2.txt (5B, 100%) checksum 09b5e31766be1dba1ec27de82f975c1b6eea2a92 INFO: incr backup size = 13B INFO: new backup label = [BACKUP-INCR-3] @@ -1684,13 +1869,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-DIFF-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1707,6 +1897,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1714,6 +1907,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1747,7 +1941,7 @@ incr backup (update files) ------------------------------------------------------------------------------------------------------------------------------------ INFO: backup start: --cmd-remote=[BACKREST_BIN] --no-compress --config=[TEST_PATH]/backrest/pgbackrest.conf --config-remote=[TEST_PATH]/db/pgbackrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --hardlink --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast INFO: last backup label = [BACKUP-INCR-3], version = [VERSION-1] - INFO: backup file [TEST_PATH]/db/common-2/base/base1.txt (8B, 100%) checksum 9a53d532e27785e681766c98516a5e93f096a501 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/17000 (8B, 100%) checksum 9a53d532e27785e681766c98516a5e93f096a501 INFO: incr backup size = 8B INFO: new backup label = [BACKUP-INCR-4] INFO: backup stop @@ -1838,13 +2032,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-DIFF-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","reference":"[BACKUP-INCR-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-INCR-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-INCR-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1861,6 +2060,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1868,6 +2070,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1903,9 +2106,9 @@ diff backup (updates since last full) INFO: backup start: --cmd-remote=[BACKREST_BIN] --no-compress --config=[TEST_PATH]/backrest/pgbackrest.conf --config-remote=[TEST_PATH]/db/pgbackrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --hardlink --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast --type=diff INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 28%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt (8B, 48%) checksum e324463005236d83e6e54795dbddd20a74533bf3 - INFO: backup file [TEST_PATH]/db/common-2/base/base1.txt (8B, 69%) checksum 9a53d532e27785e681766c98516a5e93f096a501 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 87%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt (8B, 48%) checksum e324463005236d83e6e54795dbddd20a74533bf3 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/17000 (8B, 69%) checksum 9a53d532e27785e681766c98516a5e93f096a501 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 87%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 INFO: backup file [TEST_PATH]/db/common-2/base/base2.txt (5B, 100%) checksum 09b5e31766be1dba1ec27de82f975c1b6eea2a92 INFO: diff backup size = 39B INFO: new backup label = [BACKUP-DIFF-3] @@ -1997,13 +2200,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2020,6 +2228,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2027,6 +2238,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2152,13 +2364,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2175,6 +2392,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2182,6 +2402,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2219,8 +2440,8 @@ diff backup (remove files during backup) INFO: backup start: --cmd-remote=[BACKREST_BIN] --no-compress --config=[TEST_PATH]/backrest/pgbackrest.conf --config-remote=[TEST_PATH]/db/pgbackrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --hardlink --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast --test --test-delay=1 --test-point=manifest-build=y --type=diff INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 35%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt (12B, 61%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 83%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 61%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 83%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 DETAIL: skip file removed by database: [TEST_PATH]/db/common-2/base/base2.txt INFO: diff backup size = 31B INFO: new backup label = [BACKUP-DIFF-4] @@ -2312,11 +2533,16 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2333,6 +2559,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2340,6 +2569,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2376,12 +2606,17 @@ full backup (update file) > [BACKREST_BIN] --config=[TEST_PATH]/backrest/pgbackrest.conf --no-online --log-level-console=detail --type=full --stanza=db backup ------------------------------------------------------------------------------------------------------------------------------------ INFO: backup start: --cmd-remote=[BACKREST_BIN] --no-compress --config=[TEST_PATH]/backrest/pgbackrest.conf --config-remote=[TEST_PATH]/db/pgbackrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --hardlink --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast --type=full - INFO: backup file [TEST_PATH]/db/common-2/postgresql.conf (21B, 30%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt (12B, 48%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 - INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 64%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common-2/base/base1.txt (9B, 77%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 88%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: backup file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 95%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: backup file [TEST_PATH]/db/common-2/postgresql.conf (21B, 24%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 38%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 + INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 51%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/17000 (9B, 61%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 69%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 75%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: backup file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 81%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + INFO: backup file [TEST_PATH]/db/common-2/base/1/12000 (4B, 86%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: backup file [TEST_PATH]/db/common-2/base/32768/PG_VERSION (3B, 89%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/PG_VERSION (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: backup file [TEST_PATH]/db/common-2/base/1/PG_VERSION (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: backup file [TEST_PATH]/db/common-2/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: backup file [TEST_PATH]/db/common-2/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 INFO: full backup size = 8KB @@ -2473,12 +2708,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2495,6 +2735,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2502,6 +2745,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2959,13 +3203,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"cafac3c59553f2cfde41ce2e62e7662295f108c0","size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","reference":"[BACKUP-FULL-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2982,6 +3231,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2989,6 +3241,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -3023,6 +3276,86 @@ db-version="9.3" [db:history] 1={"db-catalog-version":201306121,"db-control-version":937,"db-system-id":6156904820763115222,"db-version":"9.3"} +restore delta, remap (selective restore 16384) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=detail --db-include=16384 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + INFO: restore start: --backup-host=127.0.0.1 --backup-user=backrest --cmd-remote=[BACKREST_BIN] --no-compress --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-include=16384=1 --delta --lock-path=[TEST_PATH]/local/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/local/log --repo-path=[TEST_PATH]/backrest --stanza=db --tablespace-map=2=[TEST_PATH]/db/tablespace/ts2-2 + INFO: restore backup set [BACKUP-DIFF-5] + INFO: remap tablespace pg_tblspc/2 directory to [TEST_PATH]/db/tablespace/ts2-2 +DETAIL: check [TEST_PATH]/db/common-2 exists +DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists + INFO: remove invalid files/paths/links from [TEST_PATH]/db/tablespace/ts2-2/[TS_PATH-1] + INFO: remove invalid files/paths/links from [TEST_PATH]/db/common-2 +DETAIL: preserve file [TEST_PATH]/db/common-2/recovery.conf +DETAIL: databases for include/exclude (1, 16384, 32768) +DETAIL: database filter: (^pg_data\/base\/32768\/)|(^pg_tblspc/2\/[TS_PATH-1]\/32768\/) +DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 22%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 34%) +DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 46%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 +DETAIL: restore file [TEST_PATH]/db/common-2/base/base2.txt - exists and matches backup (9B, 55%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/17000 - exists and matches backup (9B, 65%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) +DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 77%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 83%) +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/12000 - exists and matches backup (4B, 87%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION - exists and matches backup (3B, 90%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION - exists and matches backup (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION - exists and matches backup (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/PG_VERSION - exists and matches backup (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: wrote [TEST_PATH]/db/common-2/recovery.conf + INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) + INFO: restore file [TEST_PATH]/db/common-2/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 + INFO: restore stop + ++ supplemental file: [TEST_PATH]/db/common-2/recovery.conf +---------------------------------------------------------- +restore_command = '[BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=detail --stanza=db archive-get %f "%p"' + +restore delta, remap (selective restore 32768) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=detail --db-include=32768 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + INFO: restore start: --backup-host=127.0.0.1 --backup-user=backrest --cmd-remote=[BACKREST_BIN] --no-compress --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-include=32768=1 --delta --lock-path=[TEST_PATH]/local/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/local/log --repo-path=[TEST_PATH]/backrest --stanza=db --tablespace-map=2=[TEST_PATH]/db/tablespace/ts2-2 + INFO: restore backup set [BACKUP-DIFF-5] + INFO: remap tablespace pg_tblspc/2 directory to [TEST_PATH]/db/tablespace/ts2-2 +DETAIL: check [TEST_PATH]/db/common-2 exists +DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists + INFO: remove invalid files/paths/links from [TEST_PATH]/db/tablespace/ts2-2/[TS_PATH-1] + INFO: remove invalid files/paths/links from [TEST_PATH]/db/common-2 +DETAIL: preserve file [TEST_PATH]/db/common-2/recovery.conf +DETAIL: databases for include/exclude (1, 16384, 32768) +DETAIL: database filter: (^pg_data\/base\/16384\/)|(^pg_tblspc/2\/[TS_PATH-1]\/16384\/) +DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 22%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 34%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 +DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 46%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 +DETAIL: restore file [TEST_PATH]/db/common-2/base/base2.txt - exists and matches backup (9B, 55%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/base/16384/17000 (9B, 65%) + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 +DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 77%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 83%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/12000 - exists and matches backup (4B, 87%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION - exists and matches backup (3B, 90%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION - exists and matches backup (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION - exists and matches backup (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/PG_VERSION - exists and matches backup (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: wrote [TEST_PATH]/db/common-2/recovery.conf + INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) + INFO: restore file [TEST_PATH]/db/common-2/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 + INFO: restore stop + ++ supplemental file: [TEST_PATH]/db/common-2/recovery.conf +---------------------------------------------------------- +restore_command = '[BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=detail --stanza=db archive-get %f "%p"' + +restore delta, remap, expect exit 155 (error on invalid id) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=warn --db-include=7777 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + ERROR: [155]: database to include '7777' does not exist + +restore delta, remap, expect exit 156 (error on system id) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=warn --db-include=1 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + ERROR: [156]: system databases (template0, postgres, etc.) are included by default + restore, remap, expect exit 148 (no tablespace remap - error when tablespace dir does not exist) > [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=detail --tablespace-map-all=../../tablespace --stanza=db restore ------------------------------------------------------------------------------------------------------------------------------------ @@ -3044,13 +3377,18 @@ restore (no tablespace remap) INFO: remap tablespace pg_tblspc/2 directory to ../../tablespace/ts2 DETAIL: check [TEST_PATH]/db/common-2/base exists DETAIL: check [TEST_PATH]/db/common-2/tablespace exists - INFO: restore file [TEST_PATH]/db/common-2/base/postgresql.conf (21B, 27%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt (12B, 42%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 - INFO: restore file [TEST_PATH]/db/common-2/base/badchecksum.txt (11B, 57%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: restore file [TEST_PATH]/db/common-2/base/base/base2.txt (9B, 68%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 - INFO: restore file [TEST_PATH]/db/common-2/base/base/base1.txt (9B, 80%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 - INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 89%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: restore file [TEST_PATH]/db/common-2/base/pg_stat/global.stat (5B, 96%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/postgresql.conf (21B, 22%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 34%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 + INFO: restore file [TEST_PATH]/db/common-2/base/badchecksum.txt (11B, 46%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 + INFO: restore file [TEST_PATH]/db/common-2/base/base/base2.txt (9B, 55%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 + INFO: restore file [TEST_PATH]/db/common-2/base/base/16384/17000 (9B, 65%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 + INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: restore file [TEST_PATH]/db/common-2/base/pg_stat/global.stat (5B, 77%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/base/32768/33000 (5B, 83%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + INFO: restore file [TEST_PATH]/db/common-2/base/base/1/12000 (4B, 87%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/base/base/32768/PG_VERSION (3B, 90%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/base/16384/PG_VERSION (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/base/1/PG_VERSION (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: restore file [TEST_PATH]/db/common-2/base/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common-2/base/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) diff --git a/test/expect/backup-synthetic-007.log b/test/expect/backup-synthetic-007.log index ba7ec9c1a..1b66a4538 100644 --- a/test/expect/backup-synthetic-007.log +++ b/test/expect/backup-synthetic-007.log @@ -45,12 +45,12 @@ full backup DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_stat, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute DEBUG: Backup->process: create temp backup path [TEST_PATH]/backrest/temp/db.tmp @@ -58,25 +58,43 @@ full backup DEBUG: Backup->processManifest(): bCompress = true, bHardLink = false, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = full DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_tblspc, strPathType = backup:tmp DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-1], strDestinationFile = pg_data/postgresql.conf.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/postgresql.conf, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/postgresql.conf (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: backup file [TEST_PATH]/db/common/postgresql.conf (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 21, lManifestSaveSize = 3 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-1], strDestinationFile = pg_data/pg_stat/global.stat.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_stat/global.stat, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: backup file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 5, lManifestSaveSize = 3 - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/base1.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/base1.txt, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/base/base1.txt (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/32768/33000.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/32768/33000, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/32768/33000 (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 5, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/16384/17000.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/16384/17000, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/16384/17000 (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 4, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/1/12000.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/1/12000, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/1/12000 (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 4, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/32768/PG_VERSION.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/32768/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/32768/PG_VERSION (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/16384/PG_VERSION.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/16384/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/16384/PG_VERSION (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/1/PG_VERSION.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/1/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/1/PG_VERSION (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/PG_VERSION.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-1], strDestinationFile = pg_data/global/pg_control.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/global/pg_control, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 - DEBUG: Backup->processManifest=>: lSizeTotal = 8225 + DEBUG: Backup->processManifest=>: lSizeTotal = 8243 INFO: full backup size = 8KB INFO: new backup label = [BACKUP-FULL-1] DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = , lModificationTime = [undef], strDestinationFile = backup.manifest.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = backup.manifest, strSourcePathType = backup:tmp, strUser = [undef] @@ -183,7 +201,12 @@ pg_data/postgresql.conf={"file":"postgresql.conf","path":"../pg_config","type":" [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} @@ -204,6 +227,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -256,12 +282,12 @@ full backup (resume) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_stat, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute WARN: aborted backup of same type exists, will be cleaned to remove invalid files and resumed @@ -270,6 +296,9 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_data, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/base, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/1, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/16384, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/32768, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/global, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/pg_clog, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/pg_stat, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp @@ -280,25 +309,43 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: Backup->processManifest(): bCompress = true, bHardLink = false, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = full DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_tblspc, strPathType = backup:tmp DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/postgresql.conf.gz, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 21, strHash = 6721d92c9fcdf4248acff1f9a1377127d9064807 -DETAIL: checksum resumed file [TEST_PATH]/db/common/postgresql.conf (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: checksum resumed file [TEST_PATH]/db/common/postgresql.conf (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/pg_stat/global.stat.gz, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 5, strHash = e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 - DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/base1.txt.gz, strHashType = , strPathType = backup:tmp +DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/32768/33000.gz, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 5, strHash = 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/32768/33000 (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/16384/17000.gz, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 4, strHash = a3b357a3e395e43fcfb19bb13f3c1b5179279593 -DETAIL: checksum resumed file [TEST_PATH]/db/common/base/base1.txt (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/16384/17000 (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/1/12000.gz, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 4, strHash = a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/1/12000 (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/32768/PG_VERSION.gz, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/32768/PG_VERSION (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/16384/PG_VERSION.gz, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/16384/PG_VERSION (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/1/PG_VERSION.gz, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/1/PG_VERSION (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/PG_VERSION.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/global/pg_control.gz, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 8192, strHash = 56fe5780b8dca9705e0c22032a83828860a21235 DETAIL: checksum resumed file [TEST_PATH]/db/common/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 - DEBUG: Backup->processManifest=>: lSizeTotal = 8225 + DEBUG: Backup->processManifest=>: lSizeTotal = 8243 INFO: full backup size = 8KB INFO: new backup label = [BACKUP-FULL-2] DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = , lModificationTime = [undef], strDestinationFile = backup.manifest.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = backup.manifest, strSourcePathType = backup:tmp, strUser = [undef] @@ -405,7 +452,12 @@ pg_data/postgresql.conf={"file":"postgresql.conf","path":"../pg_config","type":" [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} @@ -426,6 +478,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -489,6 +544,9 @@ DETAIL: check [TEST_PATH]/db/common exists DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = deleteme, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute @@ -518,6 +576,9 @@ DETAIL: check [TEST_PATH]/db/pg_config exists DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = deleteme, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute @@ -547,22 +608,54 @@ DETAIL: set mode 0700 on [TEST_PATH]/db/common/base DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postgresql.conf, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: build level 2 paths/links + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/1, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/16384, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/32768, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: build level 3 paths/links DEBUG: Restore->process: restore in main process DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postgresql.conf, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/postgresql.conf, strHashType = , strPathType = db:absolute DEBUG: File->hashSize=>: iSize = 21, strHash = 6721d92c9fcdf4248acff1f9a1377127d9064807 -DETAIL: restore file [TEST_PATH]/db/common/postgresql.conf - exists and matches backup (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: restore file [TEST_PATH]/db/common/postgresql.conf - exists and matches backup (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/pg_stat/global.stat, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/pg_stat/global.stat, strHashType = , strPathType = db:absolute DEBUG: File->hashSize=>: iSize = 5, strHash = e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: restore file [TEST_PATH]/db/common/pg_stat/global.stat - exists and matches backup (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 - DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/base1.txt, strPathType = db:absolute +DETAIL: restore file [TEST_PATH]/db/common/pg_stat/global.stat - exists and matches backup (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/32768/33000, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/32768/33000, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 5, strHash = 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/33000 - exists and matches backup (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/16384/17000, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = , bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = true, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = [TEST_PATH]/db/common/base/base1.txt, strDestinationPathType = db:absolute, strGroup = [GROUP-1], strMode = 0600, strSourceFile = [BACKUP-FULL-2]/pg_data/base/base1.txt.gz, strSourcePathType = backup:cluster, strUser = [USER-1] - DEBUG: File->owner(): strFile = [TEST_PATH]/db/common/base/base1.txt.backrest.tmp, strGroup = [GROUP-1], strPathType = absolute, strUser = [USER-1] - INFO: restore file [TEST_PATH]/db/common/base/base1.txt (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = , bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = true, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = [TEST_PATH]/db/common/base/16384/17000, strDestinationPathType = db:absolute, strGroup = [GROUP-1], strMode = 0600, strSourceFile = [BACKUP-FULL-2]/pg_data/base/16384/17000.gz, strSourcePathType = backup:cluster, strUser = [USER-1] + DEBUG: File->owner(): strFile = [TEST_PATH]/db/common/base/16384/17000.backrest.tmp, strGroup = [GROUP-1], strPathType = absolute, strUser = [USER-1] + INFO: restore file [TEST_PATH]/db/common/base/16384/17000 (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/1/12000, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/1/12000, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 4, strHash = a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/base/1/12000 - exists and matches backup (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/32768/PG_VERSION, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/32768/PG_VERSION, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/PG_VERSION - exists and matches backup (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/16384/PG_VERSION, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/16384/PG_VERSION, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/16384/PG_VERSION - exists and matches backup (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/1/PG_VERSION, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/1/PG_VERSION, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/1/PG_VERSION - exists and matches backup (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/PG_VERSION, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/PG_VERSION, strHashType = , strPathType = db:absolute @@ -614,9 +707,14 @@ DETAIL: preserve file [TEST_PATH]/db/common/recovery.conf DETAIL: remove link [TEST_PATH]/db/common/postgresql.conf DETAIL: remove link [TEST_PATH]/db/common/pg_stat INFO: cleanup removed 2 links - INFO: restore file [TEST_PATH]/db/common/postgresql.conf (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: restore file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: restore file [TEST_PATH]/db/common/base/base1.txt - exists and matches size 4 and modification time [MODIFICATION-TIME-2] (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common/postgresql.conf (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/33000 - exists and matches size 5 and modification time [MODIFICATION-TIME-2] (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common/base/16384/17000 - exists and matches size 4 and modification time [MODIFICATION-TIME-2] (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/base/1/12000 - exists and matches size 4 and modification time [MODIFICATION-TIME-2] (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/PG_VERSION - exists and matches size 3 and modification time [MODIFICATION-TIME-2] (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/16384/PG_VERSION - exists and matches size 3 and modification time [MODIFICATION-TIME-2] (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/1/PG_VERSION - exists and matches size 3 and modification time [MODIFICATION-TIME-2] (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: restore file [TEST_PATH]/db/common/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -716,25 +814,30 @@ incr backup (add tablespace 1) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: Manifest->build: found tablespace 1 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 + DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute DEBUG: Backup->process: create temp backup path [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->pathCreate(): bCreateParents = true, bIgnoreExists = false, strMode = <0750>, strPath = [undef], strPathType = backup:tmp DEBUG: Backup->processManifest(): bCompress = true, bHardLink = false, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = incr DEBUG: Backup->processManifest: reference pg_data/PG_VERSION to [BACKUP-FULL-2] - DEBUG: Backup->processManifest: reference pg_data/base/base1.txt to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/1/12000 to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/1/PG_VERSION to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/16384/17000 to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/16384/PG_VERSION to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/32768/33000 to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/32768/PG_VERSION to [BACKUP-FULL-2] DEBUG: Backup->processManifest: reference pg_data/global/pg_control to [BACKUP-FULL-2] DEBUG: Backup->processManifest: reference pg_data/pg_stat/global.stat to [BACKUP-FULL-2] DEBUG: Backup->processManifest: reference pg_data/postgresql.conf to [BACKUP-FULL-2] DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/badchecksum.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/badchecksum.txt, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 61%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/1/[TS_PATH-1]/tablespace1.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f DEBUG: Backup->processManifest=>: lSizeTotal = 18 INFO: incr backup size = 18B INFO: new backup label = [BACKUP-INCR-1] @@ -847,11 +950,16 @@ pg_tblspc/1={"path":"[TEST_PATH]/db/tablespace/ts1","tablespace-id":"1","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -868,6 +976,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -875,6 +986,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} [target:path:default] group="postgres" @@ -933,14 +1045,14 @@ incr backup (resume and add tablespace 2) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: Manifest->build: found tablespace 1 DEBUG: Manifest->build: found tablespace 2 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 + DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/2, strParentPath = [TEST_PATH]/db/common/pg_tblspc/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts2 + DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/2, strParentPath = [TEST_PATH]/db/common/pg_tblspc/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts2 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/tablespace/ts2, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute WARN: aborted backup of same type exists, will be cleaned to remove invalid files and resumed @@ -951,10 +1063,16 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_tblspc/1, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_tblspc/1/[TS_PATH-1], strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 4, oManifestHashRef = [hash], strPathFileOp = pg_tblspc/1/[TS_PATH-1]/16384, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: Backup->fileNotInManifest=>: stryFile = () DEBUG: Backup->processManifest(): bCompress = true, bHardLink = false, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = incr DEBUG: Backup->processManifest: reference pg_data/PG_VERSION to [BACKUP-FULL-2] - DEBUG: Backup->processManifest: reference pg_data/base/base1.txt to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/1/12000 to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/1/PG_VERSION to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/16384/17000 to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/16384/PG_VERSION to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/32768/33000 to [BACKUP-FULL-2] + DEBUG: Backup->processManifest: reference pg_data/base/32768/PG_VERSION to [BACKUP-FULL-2] DEBUG: Backup->processManifest: reference pg_data/global/pg_control to [BACKUP-FULL-2] DEBUG: Backup->processManifest: reference pg_data/pg_stat/global.stat to [BACKUP-FULL-2] DEBUG: Backup->processManifest: reference pg_data/postgresql.conf to [BACKUP-FULL-2] @@ -963,11 +1081,11 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp WARN: resumed backup file pg_data/badchecksum.txt should have checksum bogus but actually has checksum f927212cd08d11a42a666b2f04235398e9ceeb51. The file will be recopied and backup will continue but this may be an issue unless the backup temp path is known to be corrupted. DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/badchecksum.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/badchecksum.txt, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 44%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/2/[TS_PATH-1]/tablespace2.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - DEBUG: File->hashSize(): bCompressed = true, strFile = pg_tblspc/1/[TS_PATH-1]/tablespace1.txt.gz, strHashType = , strPathType = backup:tmp + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt.gz, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 7, strHash = d85de07d6421d90aa9191c11c889bfde43680f0f -DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f +DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f DEBUG: Backup->processManifest=>: lSizeTotal = 25 INFO: incr backup size = 25B INFO: new backup label = [BACKUP-INCR-2] @@ -1081,12 +1199,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2","tablespace-id":"2","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1104,6 +1227,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1111,8 +1237,10 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1148,8 +1276,8 @@ diff backup (cannot resume - new diff) INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] WARN: aborted backup exists, but cannot be resumed (new backup-type 'diff' does not match aborted backup-type 'incr') - will be dropped and recreated INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 44%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f INFO: diff backup size = 25B INFO: new backup label = [BACKUP-DIFF-1] INFO: backup stop @@ -1234,12 +1362,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2","tablespace-id":"2","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1257,6 +1390,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1264,8 +1400,10 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1301,8 +1439,8 @@ diff backup (cannot resume - disabled) INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] WARN: aborted backup exists, but cannot be resumed (resume is disabled) - will be dropped and recreated INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 44%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f INFO: diff backup size = 25B INFO: new backup label = [BACKUP-DIFF-2] INFO: backup stop @@ -1387,12 +1525,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2","tablespace-id":"2","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1410,6 +1553,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1417,8 +1563,10 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1482,12 +1630,17 @@ restore, backup '[BACKUP-DIFF-2]', remap (remap all paths) DETAIL: check [TEST_PATH]/db/common-2 exists DETAIL: check [TEST_PATH]/db/tablespace/ts1-2 exists DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists - INFO: restore file [TEST_PATH]/db/common-2/postgresql.conf (21B, 36%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: restore file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 55%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 67%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 79%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f - INFO: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 87%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 - INFO: restore file [TEST_PATH]/db/common-2/base/base1.txt (4B, 94%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/postgresql.conf (21B, 27%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 42%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 51%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 60%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + INFO: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 67%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 73%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + INFO: restore file [TEST_PATH]/db/common-2/base/16384/17000 (4B, 78%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/base/1/12000 (4B, 84%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION (3B, 92%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: restore file [TEST_PATH]/db/common-2/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common-2/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -1513,12 +1666,17 @@ DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists INFO: remove invalid files/paths/links from [TEST_PATH]/db/tablespace/ts1-2/[TS_PATH-1] INFO: remove invalid files/paths/links from [TEST_PATH]/db/common-2 DETAIL: preserve file [TEST_PATH]/db/common-2/recovery.conf -DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 36%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 -DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 55%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 -DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt - exists and matches backup (7B, 67%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 -DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt - exists and matches backup (7B, 79%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f -DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 87%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: restore file [TEST_PATH]/db/common-2/base/base1.txt - exists and matches backup (4B, 94%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 27%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 42%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 +DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt - exists and matches backup (7B, 51%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 +DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt - exists and matches backup (7B, 60%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f +DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 67%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/33000 - exists and matches backup (5B, 73%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/17000 - exists and matches backup (4B, 78%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/12000 - exists and matches backup (4B, 84%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION - exists and matches backup (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION - exists and matches backup (3B, 92%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION - exists and matches backup (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DETAIL: restore file [TEST_PATH]/db/common-2/PG_VERSION - exists and matches backup (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common-2/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -1534,7 +1692,7 @@ incr backup (add files and remove tablespace 2) ------------------------------------------------------------------------------------------------------------------------------------ INFO: backup start: --cmd-remote=[BACKREST_BIN] --config=[TEST_PATH]/backrest/pgbackrest.conf --config-remote=[TEST_PATH]/db/pgbackrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast INFO: last backup label = [BACKUP-DIFF-2], version = [VERSION-1] - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt (8B, 61%) checksum e324463005236d83e6e54795dbddd20a74533bf3 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt (8B, 61%) checksum e324463005236d83e6e54795dbddd20a74533bf3 INFO: backup file [TEST_PATH]/db/common-2/base/base2.txt (5B, 100%) checksum 09b5e31766be1dba1ec27de82f975c1b6eea2a92 INFO: incr backup size = 13B INFO: new backup label = [BACKUP-INCR-3] @@ -1623,13 +1781,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-DIFF-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1646,6 +1809,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1653,6 +1819,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1686,7 +1853,7 @@ incr backup (update files) ------------------------------------------------------------------------------------------------------------------------------------ INFO: backup start: --cmd-remote=[BACKREST_BIN] --config=[TEST_PATH]/backrest/pgbackrest.conf --config-remote=[TEST_PATH]/db/pgbackrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast INFO: last backup label = [BACKUP-INCR-3], version = [VERSION-1] - INFO: backup file [TEST_PATH]/db/common-2/base/base1.txt (8B, 100%) checksum 9a53d532e27785e681766c98516a5e93f096a501 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/17000 (8B, 100%) checksum 9a53d532e27785e681766c98516a5e93f096a501 INFO: incr backup size = 8B INFO: new backup label = [BACKUP-INCR-4] INFO: backup stop @@ -1774,13 +1941,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-DIFF-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","reference":"[BACKUP-INCR-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-INCR-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-INCR-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1797,6 +1969,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1804,6 +1979,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1839,9 +2015,9 @@ diff backup (updates since last full) INFO: backup start: --cmd-remote=[BACKREST_BIN] --config=[TEST_PATH]/backrest/pgbackrest.conf --config-remote=[TEST_PATH]/db/pgbackrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast --type=diff INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 28%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt (8B, 48%) checksum e324463005236d83e6e54795dbddd20a74533bf3 - INFO: backup file [TEST_PATH]/db/common-2/base/base1.txt (8B, 69%) checksum 9a53d532e27785e681766c98516a5e93f096a501 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 87%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt (8B, 48%) checksum e324463005236d83e6e54795dbddd20a74533bf3 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/17000 (8B, 69%) checksum 9a53d532e27785e681766c98516a5e93f096a501 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 87%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 INFO: backup file [TEST_PATH]/db/common-2/base/base2.txt (5B, 100%) checksum 09b5e31766be1dba1ec27de82f975c1b6eea2a92 INFO: diff backup size = 39B INFO: new backup label = [BACKUP-DIFF-3] @@ -1930,13 +2106,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1953,6 +2134,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1960,6 +2144,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2082,13 +2267,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2105,6 +2295,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2112,6 +2305,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2149,8 +2343,8 @@ diff backup (remove files during backup) INFO: backup start: --cmd-remote=[BACKREST_BIN] --config=[TEST_PATH]/backrest/pgbackrest.conf --config-remote=[TEST_PATH]/db/pgbackrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast --test --test-delay=1 --test-point=manifest-build=y --type=diff INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 35%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt (12B, 61%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 83%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 61%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 83%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 DETAIL: skip file removed by database: [TEST_PATH]/db/common-2/base/base2.txt INFO: diff backup size = 31B INFO: new backup label = [BACKUP-DIFF-4] @@ -2239,11 +2433,16 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2260,6 +2459,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2267,6 +2469,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2303,12 +2506,17 @@ full backup (update file) > [BACKREST_BIN] --config=[TEST_PATH]/backrest/pgbackrest.conf --no-online --log-level-console=detail --type=full --stanza=db backup ------------------------------------------------------------------------------------------------------------------------------------ INFO: backup start: --cmd-remote=[BACKREST_BIN] --config=[TEST_PATH]/backrest/pgbackrest.conf --config-remote=[TEST_PATH]/db/pgbackrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast --type=full - INFO: backup file [TEST_PATH]/db/common-2/postgresql.conf (21B, 30%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt (12B, 48%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 - INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 64%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common-2/base/base1.txt (9B, 77%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 88%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: backup file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 95%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: backup file [TEST_PATH]/db/common-2/postgresql.conf (21B, 24%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 38%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 + INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 51%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/17000 (9B, 61%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 69%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 75%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: backup file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 81%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + INFO: backup file [TEST_PATH]/db/common-2/base/1/12000 (4B, 86%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: backup file [TEST_PATH]/db/common-2/base/32768/PG_VERSION (3B, 89%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/PG_VERSION (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: backup file [TEST_PATH]/db/common-2/base/1/PG_VERSION (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: backup file [TEST_PATH]/db/common-2/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: backup file [TEST_PATH]/db/common-2/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 INFO: full backup size = 8KB @@ -2397,12 +2605,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2419,6 +2632,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2426,6 +2642,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2468,48 +2685,48 @@ stanza: db full backup: [BACKUP-FULL-2] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 8KB - repository size: 277B, repository backup size: 277B + repository size: 395B, repository backup size: 395B diff backup: [BACKUP-DIFF-2] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 25B - repository size: 362B, repository backup size: 85B + repository size: 480B, repository backup size: 85B backup reference list: [BACKUP-FULL-2] incr backup: [BACKUP-INCR-3] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 13B - repository size: 388B, repository backup size: 53B + repository size: 506B, repository backup size: 53B backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-2] incr backup: [BACKUP-INCR-4] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 8B - repository size: 392B, repository backup size: 28B + repository size: 510B, repository backup size: 28B backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-2], [BACKUP-INCR-3] diff backup: [BACKUP-DIFF-3] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 39B - repository size: 392B, repository backup size: 139B + repository size: 510B, repository backup size: 139B backup reference list: [BACKUP-FULL-2] incr backup: [BACKUP-INCR-5] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 0B - repository size: 392B, repository backup size: 0B + repository size: 510B, repository backup size: 0B backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-3] diff backup: [BACKUP-DIFF-4] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 30B - repository size: 343B, repository backup size: 90B + repository size: 461B, repository backup size: 90B backup reference list: [BACKUP-FULL-2] full backup: [BACKUP-FULL-3] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 8KB - repository size: 372B, repository backup size: 372B + repository size: 490B, repository backup size: 490B info db > [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=warn --stanza=db info --output=json @@ -2880,13 +3097,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"cafac3c59553f2cfde41ce2e62e7662295f108c0","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2903,6 +3125,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2910,6 +3135,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2944,6 +3170,86 @@ db-version="9.3" [db:history] 1={"db-catalog-version":201306121,"db-control-version":937,"db-system-id":6156904820763115222,"db-version":"9.3"} +restore delta, remap (selective restore 16384) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=detail --db-include=16384 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + INFO: restore start: --backup-host=127.0.0.1 --backup-user=backrest --cmd-remote=[BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-include=16384=1 --delta --lock-path=[TEST_PATH]/local/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/local/log --repo-path=[TEST_PATH]/backrest --stanza=db --tablespace-map=2=[TEST_PATH]/db/tablespace/ts2-2 + INFO: restore backup set [BACKUP-DIFF-5] + INFO: remap tablespace pg_tblspc/2 directory to [TEST_PATH]/db/tablespace/ts2-2 +DETAIL: check [TEST_PATH]/db/common-2 exists +DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists + INFO: remove invalid files/paths/links from [TEST_PATH]/db/tablespace/ts2-2/[TS_PATH-1] + INFO: remove invalid files/paths/links from [TEST_PATH]/db/common-2 +DETAIL: preserve file [TEST_PATH]/db/common-2/recovery.conf +DETAIL: databases for include/exclude (1, 16384, 32768) +DETAIL: database filter: (^pg_data\/base\/32768\/)|(^pg_tblspc/2\/[TS_PATH-1]\/32768\/) +DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 22%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 34%) +DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 46%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 +DETAIL: restore file [TEST_PATH]/db/common-2/base/base2.txt - exists and matches backup (9B, 55%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/17000 - exists and matches backup (9B, 65%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) +DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 77%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 83%) +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/12000 - exists and matches backup (4B, 87%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION - exists and matches backup (3B, 90%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION - exists and matches backup (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION - exists and matches backup (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/PG_VERSION - exists and matches backup (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: wrote [TEST_PATH]/db/common-2/recovery.conf + INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) + INFO: restore file [TEST_PATH]/db/common-2/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 + INFO: restore stop + ++ supplemental file: [TEST_PATH]/db/common-2/recovery.conf +---------------------------------------------------------- +restore_command = '[BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=detail --stanza=db archive-get %f "%p"' + +restore delta, remap (selective restore 32768) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=detail --db-include=32768 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + INFO: restore start: --backup-host=127.0.0.1 --backup-user=backrest --cmd-remote=[BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-include=32768=1 --delta --lock-path=[TEST_PATH]/local/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/local/log --repo-path=[TEST_PATH]/backrest --stanza=db --tablespace-map=2=[TEST_PATH]/db/tablespace/ts2-2 + INFO: restore backup set [BACKUP-DIFF-5] + INFO: remap tablespace pg_tblspc/2 directory to [TEST_PATH]/db/tablespace/ts2-2 +DETAIL: check [TEST_PATH]/db/common-2 exists +DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists + INFO: remove invalid files/paths/links from [TEST_PATH]/db/tablespace/ts2-2/[TS_PATH-1] + INFO: remove invalid files/paths/links from [TEST_PATH]/db/common-2 +DETAIL: preserve file [TEST_PATH]/db/common-2/recovery.conf +DETAIL: databases for include/exclude (1, 16384, 32768) +DETAIL: database filter: (^pg_data\/base\/16384\/)|(^pg_tblspc/2\/[TS_PATH-1]\/16384\/) +DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 22%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 34%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 +DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 46%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 +DETAIL: restore file [TEST_PATH]/db/common-2/base/base2.txt - exists and matches backup (9B, 55%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/base/16384/17000 (9B, 65%) + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 +DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 77%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 83%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/12000 - exists and matches backup (4B, 87%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION - exists and matches backup (3B, 90%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION - exists and matches backup (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION - exists and matches backup (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/PG_VERSION - exists and matches backup (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: wrote [TEST_PATH]/db/common-2/recovery.conf + INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) + INFO: restore file [TEST_PATH]/db/common-2/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 + INFO: restore stop + ++ supplemental file: [TEST_PATH]/db/common-2/recovery.conf +---------------------------------------------------------- +restore_command = '[BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=detail --stanza=db archive-get %f "%p"' + +restore delta, remap, expect exit 155 (error on invalid id) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=warn --db-include=7777 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + ERROR: [155]: database to include '7777' does not exist + +restore delta, remap, expect exit 156 (error on system id) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=warn --db-include=1 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + ERROR: [156]: system databases (template0, postgres, etc.) are included by default + restore, remap, expect exit 148 (no tablespace remap - error when tablespace dir does not exist) > [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=detail --tablespace-map-all=../../tablespace --stanza=db restore ------------------------------------------------------------------------------------------------------------------------------------ @@ -2965,13 +3271,18 @@ restore (no tablespace remap) INFO: remap tablespace pg_tblspc/2 directory to ../../tablespace/ts2 DETAIL: check [TEST_PATH]/db/common-2/base exists DETAIL: check [TEST_PATH]/db/common-2/tablespace exists - INFO: restore file [TEST_PATH]/db/common-2/base/postgresql.conf (21B, 27%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt (12B, 42%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 - INFO: restore file [TEST_PATH]/db/common-2/base/badchecksum.txt (11B, 57%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: restore file [TEST_PATH]/db/common-2/base/base/base2.txt (9B, 68%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 - INFO: restore file [TEST_PATH]/db/common-2/base/base/base1.txt (9B, 80%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 - INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 89%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: restore file [TEST_PATH]/db/common-2/base/pg_stat/global.stat (5B, 96%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/postgresql.conf (21B, 22%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 34%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 + INFO: restore file [TEST_PATH]/db/common-2/base/badchecksum.txt (11B, 46%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 + INFO: restore file [TEST_PATH]/db/common-2/base/base/base2.txt (9B, 55%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 + INFO: restore file [TEST_PATH]/db/common-2/base/base/16384/17000 (9B, 65%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 + INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: restore file [TEST_PATH]/db/common-2/base/pg_stat/global.stat (5B, 77%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/base/32768/33000 (5B, 83%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + INFO: restore file [TEST_PATH]/db/common-2/base/base/1/12000 (4B, 87%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/base/base/32768/PG_VERSION (3B, 90%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/base/16384/PG_VERSION (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/base/1/PG_VERSION (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: restore file [TEST_PATH]/db/common-2/base/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common-2/base/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -2991,53 +3302,53 @@ stanza: db full backup: [BACKUP-FULL-2] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 8KB - repository size: 277B, repository backup size: 277B + repository size: 395B, repository backup size: 395B diff backup: [BACKUP-DIFF-2] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 25B - repository size: 362B, repository backup size: 85B + repository size: 480B, repository backup size: 85B backup reference list: [BACKUP-FULL-2] incr backup: [BACKUP-INCR-3] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 13B - repository size: 388B, repository backup size: 53B + repository size: 506B, repository backup size: 53B backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-2] incr backup: [BACKUP-INCR-4] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 8B - repository size: 392B, repository backup size: 28B + repository size: 510B, repository backup size: 28B backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-2], [BACKUP-INCR-3] diff backup: [BACKUP-DIFF-3] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 39B - repository size: 392B, repository backup size: 139B + repository size: 510B, repository backup size: 139B backup reference list: [BACKUP-FULL-2] incr backup: [BACKUP-INCR-5] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 0B - repository size: 392B, repository backup size: 0B + repository size: 510B, repository backup size: 0B backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-3] diff backup: [BACKUP-DIFF-4] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 30B - repository size: 343B, repository backup size: 90B + repository size: 461B, repository backup size: 90B backup reference list: [BACKUP-FULL-2] full backup: [BACKUP-FULL-3] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 8KB - repository size: 372B, repository backup size: 372B + repository size: 490B, repository backup size: 490B diff backup: [BACKUP-DIFF-5] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 9B - repository size: 401B, repository backup size: 29B + repository size: 519B, repository backup size: 29B backup reference list: [BACKUP-FULL-3] stanza: db_empty diff --git a/test/expect/backup-synthetic-008.log b/test/expect/backup-synthetic-008.log index 1d30f9dbd..478e61840 100644 --- a/test/expect/backup-synthetic-008.log +++ b/test/expect/backup-synthetic-008.log @@ -45,12 +45,12 @@ full backup DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_stat, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute DEBUG: Backup->process: create temp backup path [TEST_PATH]/backrest/temp/db.tmp @@ -58,25 +58,43 @@ full backup DEBUG: Backup->processManifest(): bCompress = true, bHardLink = true, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = full DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_tblspc, strPathType = backup:tmp DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-1], strDestinationFile = pg_data/postgresql.conf.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/postgresql.conf, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/postgresql.conf (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: backup file [TEST_PATH]/db/common/postgresql.conf (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 21, lManifestSaveSize = 3 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-1], strDestinationFile = pg_data/pg_stat/global.stat.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_stat/global.stat, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: backup file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 5, lManifestSaveSize = 3 - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/base1.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/base1.txt, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/base/base1.txt (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/32768/33000.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/32768/33000, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/32768/33000 (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 5, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/16384/17000.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/16384/17000, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/16384/17000 (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 4, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/1/12000.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/1/12000, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/1/12000 (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 4, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/32768/PG_VERSION.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/32768/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/32768/PG_VERSION (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/16384/PG_VERSION.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/16384/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/16384/PG_VERSION (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/base/1/PG_VERSION.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/base/1/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/base/1/PG_VERSION (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/PG_VERSION.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: BackupFile::backupManifestUpdate: save manifest: lManifestSaveCurrent = 3, lManifestSaveSize = 3 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-1], strDestinationFile = pg_data/global/pg_control.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/global/pg_control, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 - DEBUG: Backup->processManifest=>: lSizeTotal = 8225 + DEBUG: Backup->processManifest=>: lSizeTotal = 8243 INFO: full backup size = 8KB INFO: new backup label = [BACKUP-FULL-1] DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = , lModificationTime = [undef], strDestinationFile = backup.manifest.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = backup.manifest, strSourcePathType = backup:tmp, strUser = [undef] @@ -184,7 +202,12 @@ pg_data/postgresql.conf={"file":"postgresql.conf","path":"../pg_config","type":" [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} @@ -205,6 +228,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -257,12 +283,12 @@ full backup (resume) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/pg_stat, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_stat DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_stat, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf + DEBUG: Manifest->build(): bOnline = false, bTablespace = false, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [undef], strLevel = pg_data/postgresql.conf, strParentPath = [TEST_PATH]/db/common, strPath = ../pg_config/postgresql.conf DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/pg_config/postgresql.conf, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute WARN: aborted backup of same type exists, will be cleaned to remove invalid files and resumed @@ -271,6 +297,9 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_data, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/base, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/1, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/16384, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/32768, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/global, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/pg_clog, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/pg_stat, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp @@ -281,25 +310,43 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: Backup->processManifest(): bCompress = true, bHardLink = true, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = full DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_tblspc, strPathType = backup:tmp DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/postgresql.conf.gz, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 21, strHash = 6721d92c9fcdf4248acff1f9a1377127d9064807 -DETAIL: checksum resumed file [TEST_PATH]/db/common/postgresql.conf (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: checksum resumed file [TEST_PATH]/db/common/postgresql.conf (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/pg_stat/global.stat.gz, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 5, strHash = e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 - DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/base1.txt.gz, strHashType = , strPathType = backup:tmp +DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/32768/33000.gz, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 5, strHash = 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/32768/33000 (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/16384/17000.gz, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 4, strHash = a3b357a3e395e43fcfb19bb13f3c1b5179279593 -DETAIL: checksum resumed file [TEST_PATH]/db/common/base/base1.txt (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/16384/17000 (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/1/12000.gz, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 4, strHash = a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/1/12000 (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/32768/PG_VERSION.gz, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/32768/PG_VERSION (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/16384/PG_VERSION.gz, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/16384/PG_VERSION (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/base/1/PG_VERSION.gz, strHashType = , strPathType = backup:tmp + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: checksum resumed file [TEST_PATH]/db/common/base/1/PG_VERSION (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/PG_VERSION.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/PG_VERSION, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: File->hashSize(): bCompressed = true, strFile = pg_data/global/pg_control.gz, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 8192, strHash = 56fe5780b8dca9705e0c22032a83828860a21235 DETAIL: checksum resumed file [TEST_PATH]/db/common/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 - DEBUG: Backup->processManifest=>: lSizeTotal = 8225 + DEBUG: Backup->processManifest=>: lSizeTotal = 8243 INFO: full backup size = 8KB INFO: new backup label = [BACKUP-FULL-2] DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = , lModificationTime = [undef], strDestinationFile = backup.manifest.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = backup.manifest, strSourcePathType = backup:tmp, strUser = [undef] @@ -407,7 +454,12 @@ pg_data/postgresql.conf={"file":"postgresql.conf","path":"../pg_config","type":" [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} @@ -428,6 +480,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -491,6 +546,9 @@ DETAIL: check [TEST_PATH]/db/common exists DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = deleteme, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute @@ -520,6 +578,9 @@ DETAIL: check [TEST_PATH]/db/pg_config exists DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = base, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/1, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/16384, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute + DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = base/32768, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = deleteme, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = global, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/db/common, strPathType = db:absolute @@ -549,22 +610,54 @@ DETAIL: set mode 0700 on [TEST_PATH]/db/common/base DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postgresql.conf, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: build level 2 paths/links + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/1, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/16384, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/32768, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: build level 3 paths/links DEBUG: Restore->process: restore in main process DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postgresql.conf, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/postgresql.conf, strHashType = , strPathType = db:absolute DEBUG: File->hashSize=>: iSize = 21, strHash = 6721d92c9fcdf4248acff1f9a1377127d9064807 -DETAIL: restore file [TEST_PATH]/db/common/postgresql.conf - exists and matches backup (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: restore file [TEST_PATH]/db/common/postgresql.conf - exists and matches backup (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/pg_stat/global.stat, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/pg_stat/global.stat, strHashType = , strPathType = db:absolute DEBUG: File->hashSize=>: iSize = 5, strHash = e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: restore file [TEST_PATH]/db/common/pg_stat/global.stat - exists and matches backup (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 - DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/base1.txt, strPathType = db:absolute +DETAIL: restore file [TEST_PATH]/db/common/pg_stat/global.stat - exists and matches backup (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/32768/33000, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/32768/33000, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 5, strHash = 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/33000 - exists and matches backup (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/16384/17000, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = , bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = true, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = [TEST_PATH]/db/common/base/base1.txt, strDestinationPathType = db:absolute, strGroup = [GROUP-1], strMode = 0600, strSourceFile = [BACKUP-FULL-2]/pg_data/base/base1.txt.gz, strSourcePathType = backup:cluster, strUser = [USER-1] - DEBUG: File->owner(): strFile = [TEST_PATH]/db/common/base/base1.txt.backrest.tmp, strGroup = [GROUP-1], strPathType = absolute, strUser = [USER-1] - INFO: restore file [TEST_PATH]/db/common/base/base1.txt (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = , bDestinationPathCreate = , bIgnoreMissingSource = , bSourceCompressed = true, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = [TEST_PATH]/db/common/base/16384/17000, strDestinationPathType = db:absolute, strGroup = [GROUP-1], strMode = 0600, strSourceFile = [BACKUP-FULL-2]/pg_data/base/16384/17000.gz, strSourcePathType = backup:cluster, strUser = [USER-1] + DEBUG: File->owner(): strFile = [TEST_PATH]/db/common/base/16384/17000.backrest.tmp, strGroup = [GROUP-1], strPathType = absolute, strUser = [USER-1] + INFO: restore file [TEST_PATH]/db/common/base/16384/17000 (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/1/12000, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/1/12000, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 4, strHash = a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/base/1/12000 - exists and matches backup (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/32768/PG_VERSION, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/32768/PG_VERSION, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/PG_VERSION - exists and matches backup (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/16384/PG_VERSION, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/16384/PG_VERSION, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/16384/PG_VERSION - exists and matches backup (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/base/1/PG_VERSION, strPathType = db:absolute + DEBUG: File->exists=>: bExists = true + DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/base/1/PG_VERSION, strHashType = , strPathType = db:absolute + DEBUG: File->hashSize=>: iSize = 3, strHash = e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/1/PG_VERSION - exists and matches backup (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/PG_VERSION, strPathType = db:absolute DEBUG: File->exists=>: bExists = true DEBUG: File->hashSize(): bCompressed = , strFile = [TEST_PATH]/db/common/PG_VERSION, strHashType = , strPathType = db:absolute @@ -616,9 +709,14 @@ DETAIL: preserve file [TEST_PATH]/db/common/recovery.conf DETAIL: remove link [TEST_PATH]/db/common/postgresql.conf DETAIL: remove link [TEST_PATH]/db/common/pg_stat INFO: cleanup removed 2 links - INFO: restore file [TEST_PATH]/db/common/postgresql.conf (21B, 63%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: restore file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 78%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: restore file [TEST_PATH]/db/common/base/base1.txt - exists and matches size 4 and modification time [MODIFICATION-TIME-2] (4B, 90%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common/postgresql.conf (21B, 41%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common/pg_stat/global.stat (5B, 50%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/33000 - exists and matches size 5 and modification time [MODIFICATION-TIME-2] (5B, 60%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common/base/16384/17000 - exists and matches size 4 and modification time [MODIFICATION-TIME-2] (4B, 68%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/base/1/12000 - exists and matches size 4 and modification time [MODIFICATION-TIME-2] (4B, 76%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common/base/32768/PG_VERSION - exists and matches size 3 and modification time [MODIFICATION-TIME-2] (3B, 82%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/16384/PG_VERSION - exists and matches size 3 and modification time [MODIFICATION-TIME-2] (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common/base/1/PG_VERSION - exists and matches size 3 and modification time [MODIFICATION-TIME-2] (3B, 94%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: restore file [TEST_PATH]/db/common/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -718,11 +816,11 @@ incr backup (add tablespace 1) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: Manifest->build: found tablespace 1 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 + DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute DEBUG: Backup->process: create temp backup path [TEST_PATH]/backrest/temp/db.tmp @@ -730,6 +828,9 @@ incr backup (add tablespace 1) DEBUG: Backup->processManifest(): bCompress = true, bHardLink = true, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = incr DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp @@ -737,10 +838,21 @@ incr backup (add tablespace 1) DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/1, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/1/[TS_PATH-1], strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/1/[TS_PATH-1]/16384, strPathType = backup:tmp DEBUG: Backup->processManifest: hardlink pg_data/PG_VERSION to [BACKUP-FULL-2] DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/PG_VERSION, strSourcePathType = backup:cluster - DEBUG: Backup->processManifest: hardlink pg_data/base/base1.txt to [BACKUP-FULL-2] - DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/base1.txt, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/base1.txt, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/1/12000 to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/1/12000, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/1/12000, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/1/PG_VERSION to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/1/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/1/PG_VERSION, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/16384/17000 to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/16384/17000, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/16384/17000, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/16384/PG_VERSION to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/16384/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/16384/PG_VERSION, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/32768/33000 to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/32768/33000, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/32768/33000, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/32768/PG_VERSION to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/32768/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/32768/PG_VERSION, strSourcePathType = backup:cluster DEBUG: Backup->processManifest: hardlink pg_data/global/pg_control to [BACKUP-FULL-2] DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/global/pg_control, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/global/pg_control, strSourcePathType = backup:cluster DEBUG: Backup->processManifest: hardlink pg_data/pg_stat/global.stat to [BACKUP-FULL-2] @@ -749,8 +861,8 @@ incr backup (add tablespace 1) DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/postgresql.conf, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/postgresql.conf, strSourcePathType = backup:cluster DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/badchecksum.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/badchecksum.txt, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 61%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/1/[TS_PATH-1]/tablespace1.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f DEBUG: Backup->processManifest=>: lSizeTotal = 18 INFO: incr backup size = 18B INFO: new backup label = [BACKUP-INCR-1] @@ -864,11 +976,16 @@ pg_tblspc/1={"path":"[TEST_PATH]/db/tablespace/ts1","tablespace-id":"1","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -885,6 +1002,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -892,6 +1012,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} [target:path:default] group="postgres" @@ -950,14 +1071,14 @@ incr backup (resume and add tablespace 2) DEBUG: BackupInfo->check=>: iDbHistoryId = 1 DEBUG: File->exists(): strPath = [TEST_PATH]/db/common/postmaster.pid, strPathType = db:absolute DEBUG: File->exists=>: bExists = false - DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common + DEBUG: Manifest->build(): bOnline = false, bTablespace = [undef], oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [object], oTablespaceMapRef = [undef], strFilter = [undef], strLevel = [undef], strParentPath = [undef], strPath = [TEST_PATH]/db/common DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common/pg_tblspc, strPathType = db:absolute DEBUG: Manifest->build: found tablespace 1 DEBUG: Manifest->build: found tablespace 2 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/common, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 + DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/1, strParentPath = [TEST_PATH]/db/common/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts1 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/tablespace/ts1, strPathType = db:absolute - DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/2, strParentPath = [TEST_PATH]/db/common/pg_tblspc/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts2 + DEBUG: Manifest->build(): bOnline = false, bTablespace = true, oDatabaseMapRef = [undef], oFile = [object], oLastManifest = [undef], oTablespaceMapRef = [hash], strFilter = [TS_PATH-1], strLevel = pg_tblspc/2, strParentPath = [TEST_PATH]/db/common/pg_tblspc/pg_tblspc, strPath = [TEST_PATH]/db/tablespace/ts2 DEBUG: File->manifest(): oManifestHashRef = [hash], strPath = [TEST_PATH]/db/tablespace/ts2, strPathType = db:absolute DEBUG: File->wait(): bWait = false, strPathType = db:absolute WARN: aborted backup of same type exists, will be cleaned to remove invalid files and resumed @@ -966,6 +1087,9 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->manifestRecurse(): iDepth = 0, oManifestHashRef = [hash], strPathFileOp = [undef], strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_data, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/base, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/1, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/16384, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_data/base/32768, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/global, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/pg_clog, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_data/pg_stat, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp @@ -973,15 +1097,24 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->manifestRecurse(): iDepth = 1, oManifestHashRef = [hash], strPathFileOp = pg_tblspc, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 2, oManifestHashRef = [hash], strPathFileOp = pg_tblspc/1, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp DEBUG: File->manifestRecurse(): iDepth = 3, oManifestHashRef = [hash], strPathFileOp = pg_tblspc/1/[TS_PATH-1], strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp - DEBUG: Backup->fileNotInManifest=>: stryFile = (pg_data/PG_VERSION.gz, pg_data/base/base1.txt.gz, pg_data/global/pg_control.gz, pg_data/pg_stat/global.stat.gz, pg_data/postgresql.conf.gz) + DEBUG: File->manifestRecurse(): iDepth = 4, oManifestHashRef = [hash], strPathFileOp = pg_tblspc/1/[TS_PATH-1]/16384, strPathOp = [TEST_PATH]/backrest/temp/db.tmp, strPathType = backup:tmp + DEBUG: Backup->fileNotInManifest=>: stryFile = (pg_data/PG_VERSION.gz, pg_data/base/1/12000.gz, pg_data/base/1/PG_VERSION.gz, pg_data/base/16384/17000.gz, pg_data/base/16384/PG_VERSION.gz, pg_data/base/32768/33000.gz, pg_data/base/32768/PG_VERSION.gz, pg_data/global/pg_control.gz, pg_data/pg_stat/global.stat.gz, pg_data/postgresql.conf.gz) DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/postgresql.conf.gz DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/pg_stat/global.stat.gz DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/global/pg_control.gz - DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/base1.txt.gz + DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/32768/PG_VERSION.gz + DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/32768/33000.gz + DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/16384/PG_VERSION.gz + DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/16384/17000.gz + DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/1/PG_VERSION.gz + DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/base/1/12000.gz DEBUG: Backup->tmpClean: remove file [TEST_PATH]/backrest/temp/db.tmp/pg_data/PG_VERSION.gz DEBUG: Backup->processManifest(): bCompress = true, bHardLink = true, oBackupManifest = [object], strDbPath = [TEST_PATH]/db/common, strType = incr DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/1, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/16384, strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/base/32768, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/global, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_clog, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_data/pg_stat, strPathType = backup:tmp @@ -989,12 +1122,24 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/1, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/1/[TS_PATH-1], strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/1/[TS_PATH-1]/16384, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/2, strPathType = backup:tmp DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/2/[TS_PATH-1], strPathType = backup:tmp + DEBUG: File->pathCreate(): bCreateParents = , bIgnoreExists = , strMode = <0750>, strPath = pg_tblspc/2/[TS_PATH-1]/32768, strPathType = backup:tmp DEBUG: Backup->processManifest: hardlink pg_data/PG_VERSION to [BACKUP-FULL-2] DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/PG_VERSION, strSourcePathType = backup:cluster - DEBUG: Backup->processManifest: hardlink pg_data/base/base1.txt to [BACKUP-FULL-2] - DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/base1.txt, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/base1.txt, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/1/12000 to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/1/12000, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/1/12000, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/1/PG_VERSION to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/1/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/1/PG_VERSION, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/16384/17000 to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/16384/17000, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/16384/17000, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/16384/PG_VERSION to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/16384/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/16384/PG_VERSION, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/32768/33000 to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/32768/33000, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/32768/33000, strSourcePathType = backup:cluster + DEBUG: Backup->processManifest: hardlink pg_data/base/32768/PG_VERSION to [BACKUP-FULL-2] + DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/base/32768/PG_VERSION, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/base/32768/PG_VERSION, strSourcePathType = backup:cluster DEBUG: Backup->processManifest: hardlink pg_data/global/pg_control to [BACKUP-FULL-2] DEBUG: File->linkCreate(): bHard = true, bPathCreate = true, bRelative = false, strDestinationFile = pg_data/global/pg_control, strDestinationPathType = backup:tmp, strSourceFile = [BACKUP-FULL-2]/pg_data/global/pg_control, strSourcePathType = backup:cluster DEBUG: Backup->processManifest: hardlink pg_data/pg_stat/global.stat to [BACKUP-FULL-2] @@ -1006,11 +1151,11 @@ DETAIL: clean backup temp path: [TEST_PATH]/backrest/temp/db.tmp WARN: resumed backup file pg_data/badchecksum.txt should have checksum bogus but actually has checksum f927212cd08d11a42a666b2f04235398e9ceeb51. The file will be recopied and backup will continue but this may be an issue unless the backup temp path is known to be corrupted. DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_data/badchecksum.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/badchecksum.txt, strSourcePathType = db:absolute, strUser = [undef] INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 44%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/2/[TS_PATH-1]/tablespace2.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt, strSourcePathType = db:absolute, strUser = [undef] - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - DEBUG: File->hashSize(): bCompressed = true, strFile = pg_tblspc/1/[TS_PATH-1]/tablespace1.txt.gz, strHashType = , strPathType = backup:tmp + DEBUG: File->copy(): bAppendChecksum = , bDestinationCompress = true, bDestinationPathCreate = true, bIgnoreMissingSource = true, bSourceCompressed = false, lModificationTime = [MODIFICATION-TIME-2], strDestinationFile = pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt.gz, strDestinationPathType = backup:tmp, strGroup = [undef], strMode = <0640>, strSourceFile = [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt, strSourcePathType = db:absolute, strUser = [undef] + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + DEBUG: File->hashSize(): bCompressed = true, strFile = pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt.gz, strHashType = , strPathType = backup:tmp DEBUG: File->hashSize=>: iSize = 7, strHash = d85de07d6421d90aa9191c11c889bfde43680f0f -DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f +DETAIL: checksum resumed file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f DEBUG: Backup->processManifest=>: lSizeTotal = 25 INFO: incr backup size = 25B INFO: new backup label = [BACKUP-INCR-2] @@ -1125,12 +1270,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2","tablespace-id":"2","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1148,6 +1298,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1155,8 +1308,10 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1192,8 +1347,8 @@ diff backup (cannot resume - new diff) INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] WARN: aborted backup exists, but cannot be resumed (new backup-type 'diff' does not match aborted backup-type 'incr') - will be dropped and recreated INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 44%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f INFO: diff backup size = 25B INFO: new backup label = [BACKUP-DIFF-1] INFO: backup stop @@ -1279,12 +1434,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2","tablespace-id":"2","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1302,6 +1462,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1309,8 +1472,10 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1346,8 +1511,8 @@ diff backup (cannot resume - disabled) INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] WARN: aborted backup exists, but cannot be resumed (resume is disabled) - will be dropped and recreated INFO: backup file [TEST_PATH]/db/common/badchecksum.txt (11B, 44%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 100%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f INFO: diff backup size = 25B INFO: new backup label = [BACKUP-DIFF-2] INFO: backup stop @@ -1433,12 +1598,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2","tablespace-id":"2","tablesp [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/1/[TS_PATH-1]/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt={"checksum":"d85de07d6421d90aa9191c11c889bfde43680f0f","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1456,6 +1626,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1463,8 +1636,10 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/1={} pg_tblspc/1/[TS_PATH-1]={} +pg_tblspc/1/[TS_PATH-1]/16384={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1528,12 +1703,17 @@ restore, backup '[BACKUP-DIFF-2]', remap (remap all paths) DETAIL: check [TEST_PATH]/db/common-2 exists DETAIL: check [TEST_PATH]/db/tablespace/ts1-2 exists DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists - INFO: restore file [TEST_PATH]/db/common-2/postgresql.conf (21B, 36%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: restore file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 55%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 67%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt (7B, 79%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f - INFO: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 87%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 - INFO: restore file [TEST_PATH]/db/common-2/base/base1.txt (4B, 94%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/postgresql.conf (21B, 27%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 42%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 51%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt (7B, 60%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f + INFO: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 67%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 73%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + INFO: restore file [TEST_PATH]/db/common-2/base/16384/17000 (4B, 78%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/base/1/12000 (4B, 84%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION (3B, 92%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: restore file [TEST_PATH]/db/common-2/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common-2/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -1559,12 +1739,17 @@ DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists INFO: remove invalid files/paths/links from [TEST_PATH]/db/tablespace/ts1-2/[TS_PATH-1] INFO: remove invalid files/paths/links from [TEST_PATH]/db/common-2 DETAIL: preserve file [TEST_PATH]/db/common-2/recovery.conf -DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 36%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 -DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 55%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 -DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt - exists and matches backup (7B, 67%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 -DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/tablespace1.txt - exists and matches backup (7B, 79%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f -DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 87%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 -DETAIL: restore file [TEST_PATH]/db/common-2/base/base1.txt - exists and matches backup (4B, 94%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 27%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 42%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 +DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt - exists and matches backup (7B, 51%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 +DETAIL: restore file [TEST_PATH]/db/common-2/pg_tblspc/1/[TS_PATH-1]/16384/tablespace1.txt - exists and matches backup (7B, 60%) checksum d85de07d6421d90aa9191c11c889bfde43680f0f +DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 67%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/33000 - exists and matches backup (5B, 73%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/17000 - exists and matches backup (4B, 78%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/12000 - exists and matches backup (4B, 84%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION - exists and matches backup (3B, 88%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION - exists and matches backup (3B, 92%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION - exists and matches backup (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 DETAIL: restore file [TEST_PATH]/db/common-2/PG_VERSION - exists and matches backup (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common-2/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -1580,7 +1765,7 @@ incr backup (add files and remove tablespace 2) ------------------------------------------------------------------------------------------------------------------------------------ INFO: backup start: --cmd-remote=[BACKREST_BIN] --config=[TEST_PATH]/backrest/pgbackrest.conf --config-remote=[TEST_PATH]/db/pgbackrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --hardlink --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast INFO: last backup label = [BACKUP-DIFF-2], version = [VERSION-1] - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt (8B, 61%) checksum e324463005236d83e6e54795dbddd20a74533bf3 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt (8B, 61%) checksum e324463005236d83e6e54795dbddd20a74533bf3 INFO: backup file [TEST_PATH]/db/common-2/base/base2.txt (5B, 100%) checksum 09b5e31766be1dba1ec27de82f975c1b6eea2a92 INFO: incr backup size = 13B INFO: new backup label = [BACKUP-INCR-3] @@ -1670,13 +1855,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-DIFF-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1693,6 +1883,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1700,6 +1893,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1733,7 +1927,7 @@ incr backup (update files) ------------------------------------------------------------------------------------------------------------------------------------ INFO: backup start: --cmd-remote=[BACKREST_BIN] --config=[TEST_PATH]/backrest/pgbackrest.conf --config-remote=[TEST_PATH]/db/pgbackrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --hardlink --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast INFO: last backup label = [BACKUP-INCR-3], version = [VERSION-1] - INFO: backup file [TEST_PATH]/db/common-2/base/base1.txt (8B, 100%) checksum 9a53d532e27785e681766c98516a5e93f096a501 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/17000 (8B, 100%) checksum 9a53d532e27785e681766c98516a5e93f096a501 INFO: incr backup size = 8B INFO: new backup label = [BACKUP-INCR-4] INFO: backup stop @@ -1822,13 +2016,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-DIFF-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","reference":"[BACKUP-INCR-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-INCR-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-INCR-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -1845,6 +2044,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -1852,6 +2054,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -1887,9 +2090,9 @@ diff backup (updates since last full) INFO: backup start: --cmd-remote=[BACKREST_BIN] --config=[TEST_PATH]/backrest/pgbackrest.conf --config-remote=[TEST_PATH]/db/pgbackrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --hardlink --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast --type=diff INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 28%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt (8B, 48%) checksum e324463005236d83e6e54795dbddd20a74533bf3 - INFO: backup file [TEST_PATH]/db/common-2/base/base1.txt (8B, 69%) checksum 9a53d532e27785e681766c98516a5e93f096a501 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 87%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt (8B, 48%) checksum e324463005236d83e6e54795dbddd20a74533bf3 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/17000 (8B, 69%) checksum 9a53d532e27785e681766c98516a5e93f096a501 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 87%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 INFO: backup file [TEST_PATH]/db/common-2/base/base2.txt (5B, 100%) checksum 09b5e31766be1dba1ec27de82f975c1b6eea2a92 INFO: diff backup size = 39B INFO: new backup label = [BACKUP-DIFF-3] @@ -1979,13 +2182,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2002,6 +2210,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2009,6 +2220,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2132,13 +2344,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2155,6 +2372,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2162,6 +2382,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2199,8 +2420,8 @@ diff backup (remove files during backup) INFO: backup start: --cmd-remote=[BACKREST_BIN] --config=[TEST_PATH]/backrest/pgbackrest.conf --config-remote=[TEST_PATH]/db/pgbackrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --hardlink --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast --test --test-delay=1 --test-point=manifest-build=y --type=diff INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 35%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt (12B, 61%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 83%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 61%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 83%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 DETAIL: skip file removed by database: [TEST_PATH]/db/common-2/base/base2.txt INFO: diff backup size = 31B INFO: new backup label = [BACKUP-DIFF-4] @@ -2290,11 +2511,16 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2311,6 +2537,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2318,6 +2547,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2354,12 +2584,17 @@ full backup (update file) > [BACKREST_BIN] --config=[TEST_PATH]/backrest/pgbackrest.conf --no-online --log-level-console=detail --type=full --stanza=db backup ------------------------------------------------------------------------------------------------------------------------------------ INFO: backup start: --cmd-remote=[BACKREST_BIN] --config=[TEST_PATH]/backrest/pgbackrest.conf --config-remote=[TEST_PATH]/db/pgbackrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common-2 --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --hardlink --lock-path=[TEST_PATH]/backrest/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/backrest/log --no-online --repo-path=[TEST_PATH]/backrest --stanza=db --start-fast --type=full - INFO: backup file [TEST_PATH]/db/common-2/postgresql.conf (21B, 30%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt (12B, 48%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 - INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 64%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: backup file [TEST_PATH]/db/common-2/base/base1.txt (9B, 77%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 - INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 88%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: backup file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 95%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: backup file [TEST_PATH]/db/common-2/postgresql.conf (21B, 24%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 38%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 + INFO: backup file [TEST_PATH]/db/common-2/badchecksum.txt (11B, 51%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/17000 (9B, 61%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 + INFO: backup file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 69%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: backup file [TEST_PATH]/db/common-2/pg_stat/global.stat (5B, 75%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: backup file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 81%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + INFO: backup file [TEST_PATH]/db/common-2/base/1/12000 (4B, 86%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: backup file [TEST_PATH]/db/common-2/base/32768/PG_VERSION (3B, 89%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: backup file [TEST_PATH]/db/common-2/base/16384/PG_VERSION (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: backup file [TEST_PATH]/db/common-2/base/1/PG_VERSION (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: backup file [TEST_PATH]/db/common-2/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: backup file [TEST_PATH]/db/common-2/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 INFO: full backup size = 8KB @@ -2449,12 +2684,17 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2471,6 +2711,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2478,6 +2721,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2520,48 +2764,48 @@ stanza: db full backup: [BACKUP-FULL-2] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 8KB - repository size: 277B, repository backup size: 277B + repository size: 395B, repository backup size: 395B diff backup: [BACKUP-DIFF-2] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 25B - repository size: 362B, repository backup size: 85B + repository size: 480B, repository backup size: 85B backup reference list: [BACKUP-FULL-2] incr backup: [BACKUP-INCR-3] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 13B - repository size: 388B, repository backup size: 53B + repository size: 506B, repository backup size: 53B backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-2] incr backup: [BACKUP-INCR-4] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 8B - repository size: 392B, repository backup size: 28B + repository size: 510B, repository backup size: 28B backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-2], [BACKUP-INCR-3] diff backup: [BACKUP-DIFF-3] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 39B - repository size: 392B, repository backup size: 139B + repository size: 510B, repository backup size: 139B backup reference list: [BACKUP-FULL-2] incr backup: [BACKUP-INCR-5] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 0B - repository size: 392B, repository backup size: 0B + repository size: 510B, repository backup size: 0B backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-3] diff backup: [BACKUP-DIFF-4] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 30B - repository size: 343B, repository backup size: 90B + repository size: 461B, repository backup size: 90B backup reference list: [BACKUP-FULL-2] full backup: [BACKUP-FULL-3] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 8KB - repository size: 372B, repository backup size: 372B + repository size: 490B, repository backup size: 490B info db > [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=warn --stanza=db info --output=json @@ -2933,13 +3177,18 @@ pg_tblspc/2={"path":"[TEST_PATH]/db/tablespace/ts2-2","tablespace-id":"2","table [target:file] pg_data/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_data/base/base1.txt={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/12000={"checksum":"a3b357a3e395e43fcfb19bb13f3c1b5179279593","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/1/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/17000={"checksum":"7579ada0808d7f98087a0a586d0df9de009cdc33","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/16384/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/33000={"checksum":"7f4c74dc10f61eef43e6ae642606627df1999b34","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_data/base/32768/PG_VERSION={"checksum":"e1f7a3a299f62225cba076fc6d3d6e677f303482","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/base/base2.txt={"checksum":"cafac3c59553f2cfde41ce2e62e7662295f108c0","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} pg_data/global/pg_control={"checksum":"56fe5780b8dca9705e0c22032a83828860a21235","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} -pg_tblspc/2/[TS_PATH-1]/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} -pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} +pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt={"checksum":"dfcb8679956b734706cf87259d50c88f83e80e66","reference":"[BACKUP-FULL-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} [target:file:default] group="postgres" @@ -2956,6 +3205,9 @@ user="vagrant" [target:path] pg_data={} pg_data/base={} +pg_data/base/1={} +pg_data/base/16384={} +pg_data/base/32768={} pg_data/global={} pg_data/pg_clog={} pg_data/pg_stat={} @@ -2963,6 +3215,7 @@ pg_data/pg_tblspc={} pg_tblspc={} pg_tblspc/2={} pg_tblspc/2/[TS_PATH-1]={} +pg_tblspc/2/[TS_PATH-1]/32768={} [target:path:default] group="postgres" @@ -2997,6 +3250,86 @@ db-version="9.3" [db:history] 1={"db-catalog-version":201306121,"db-control-version":937,"db-system-id":6156904820763115222,"db-version":"9.3"} +restore delta, remap (selective restore 16384) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=detail --db-include=16384 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + INFO: restore start: --backup-host=127.0.0.1 --backup-user=backrest --cmd-remote=[BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-include=16384=1 --delta --lock-path=[TEST_PATH]/local/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/local/log --repo-path=[TEST_PATH]/backrest --stanza=db --tablespace-map=2=[TEST_PATH]/db/tablespace/ts2-2 + INFO: restore backup set [BACKUP-DIFF-5] + INFO: remap tablespace pg_tblspc/2 directory to [TEST_PATH]/db/tablespace/ts2-2 +DETAIL: check [TEST_PATH]/db/common-2 exists +DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists + INFO: remove invalid files/paths/links from [TEST_PATH]/db/tablespace/ts2-2/[TS_PATH-1] + INFO: remove invalid files/paths/links from [TEST_PATH]/db/common-2 +DETAIL: preserve file [TEST_PATH]/db/common-2/recovery.conf +DETAIL: databases for include/exclude (1, 16384, 32768) +DETAIL: database filter: (^pg_data\/base\/32768\/)|(^pg_tblspc/2\/[TS_PATH-1]\/32768\/) +DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 22%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 34%) +DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 46%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 +DETAIL: restore file [TEST_PATH]/db/common-2/base/base2.txt - exists and matches backup (9B, 55%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/17000 - exists and matches backup (9B, 65%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) +DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 77%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 83%) +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/12000 - exists and matches backup (4B, 87%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION - exists and matches backup (3B, 90%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION - exists and matches backup (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION - exists and matches backup (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/PG_VERSION - exists and matches backup (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: wrote [TEST_PATH]/db/common-2/recovery.conf + INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) + INFO: restore file [TEST_PATH]/db/common-2/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 + INFO: restore stop + ++ supplemental file: [TEST_PATH]/db/common-2/recovery.conf +---------------------------------------------------------- +restore_command = '[BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=detail --stanza=db archive-get %f "%p"' + +restore delta, remap (selective restore 32768) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=detail --db-include=32768 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + INFO: restore start: --backup-host=127.0.0.1 --backup-user=backrest --cmd-remote=[BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --config-remote=[TEST_PATH]/backrest/pgbackrest.conf --db-include=32768=1 --delta --lock-path=[TEST_PATH]/local/lock --log-level-console=detail --log-level-file=trace --log-path=[TEST_PATH]/local/log --repo-path=[TEST_PATH]/backrest --stanza=db --tablespace-map=2=[TEST_PATH]/db/tablespace/ts2-2 + INFO: restore backup set [BACKUP-DIFF-5] + INFO: remap tablespace pg_tblspc/2 directory to [TEST_PATH]/db/tablespace/ts2-2 +DETAIL: check [TEST_PATH]/db/common-2 exists +DETAIL: check [TEST_PATH]/db/tablespace/ts2-2 exists + INFO: remove invalid files/paths/links from [TEST_PATH]/db/tablespace/ts2-2/[TS_PATH-1] + INFO: remove invalid files/paths/links from [TEST_PATH]/db/common-2 +DETAIL: preserve file [TEST_PATH]/db/common-2/recovery.conf +DETAIL: databases for include/exclude (1, 16384, 32768) +DETAIL: database filter: (^pg_data\/base\/16384\/)|(^pg_tblspc/2\/[TS_PATH-1]\/16384\/) +DETAIL: restore file [TEST_PATH]/db/common-2/postgresql.conf - exists and matches backup (21B, 22%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 34%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 +DETAIL: restore file [TEST_PATH]/db/common-2/badchecksum.txt - exists and matches backup (11B, 46%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 +DETAIL: restore file [TEST_PATH]/db/common-2/base/base2.txt - exists and matches backup (9B, 55%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 +DETAIL: restore zeroed file [TEST_PATH]/db/common-2/base/16384/17000 (9B, 65%) + INFO: restore file [TEST_PATH]/db/common-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 +DETAIL: restore file [TEST_PATH]/db/common-2/pg_stat/global.stat - exists and matches backup (5B, 77%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/32768/33000 (5B, 83%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/12000 - exists and matches backup (4B, 87%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 +DETAIL: restore file [TEST_PATH]/db/common-2/base/32768/PG_VERSION - exists and matches backup (3B, 90%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/16384/PG_VERSION - exists and matches backup (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/base/1/PG_VERSION - exists and matches backup (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 +DETAIL: restore file [TEST_PATH]/db/common-2/PG_VERSION - exists and matches backup (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: wrote [TEST_PATH]/db/common-2/recovery.conf + INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) + INFO: restore file [TEST_PATH]/db/common-2/global/pg_control (8KB) checksum 56fe5780b8dca9705e0c22032a83828860a21235 + INFO: restore stop + ++ supplemental file: [TEST_PATH]/db/common-2/recovery.conf +---------------------------------------------------------- +restore_command = '[BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=detail --stanza=db archive-get %f "%p"' + +restore delta, remap, expect exit 155 (error on invalid id) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=warn --db-include=7777 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + ERROR: [155]: database to include '7777' does not exist + +restore delta, remap, expect exit 156 (error on system id) +> [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --delta --log-level-console=warn --db-include=1 --stanza=db restore +------------------------------------------------------------------------------------------------------------------------------------ + ERROR: [156]: system databases (template0, postgres, etc.) are included by default + restore, remap, expect exit 148 (no tablespace remap - error when tablespace dir does not exist) > [BACKREST_BIN] --config=[TEST_PATH]/db/pgbackrest.conf --log-level-console=detail --tablespace-map-all=../../tablespace --stanza=db restore ------------------------------------------------------------------------------------------------------------------------------------ @@ -3018,13 +3351,18 @@ restore (no tablespace remap) INFO: remap tablespace pg_tblspc/2 directory to ../../tablespace/ts2 DETAIL: check [TEST_PATH]/db/common-2/base exists DETAIL: check [TEST_PATH]/db/common-2/tablespace exists - INFO: restore file [TEST_PATH]/db/common-2/base/postgresql.conf (21B, 27%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 - INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/tablespace2c.txt (12B, 42%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 - INFO: restore file [TEST_PATH]/db/common-2/base/badchecksum.txt (11B, 57%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 - INFO: restore file [TEST_PATH]/db/common-2/base/base/base2.txt (9B, 68%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 - INFO: restore file [TEST_PATH]/db/common-2/base/base/base1.txt (9B, 80%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 - INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/tablespace2.txt (7B, 89%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 - INFO: restore file [TEST_PATH]/db/common-2/base/pg_stat/global.stat (5B, 96%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/postgresql.conf (21B, 22%) checksum 6721d92c9fcdf4248acff1f9a1377127d9064807 + INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt (12B, 34%) checksum dfcb8679956b734706cf87259d50c88f83e80e66 + INFO: restore file [TEST_PATH]/db/common-2/base/badchecksum.txt (11B, 46%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 + INFO: restore file [TEST_PATH]/db/common-2/base/base/base2.txt (9B, 55%) checksum cafac3c59553f2cfde41ce2e62e7662295f108c0 + INFO: restore file [TEST_PATH]/db/common-2/base/base/16384/17000 (9B, 65%) checksum 7579ada0808d7f98087a0a586d0df9de009cdc33 + INFO: restore file [TEST_PATH]/db/common-2/base/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt (7B, 72%) checksum dc7f76e43c46101b47acc55ae4d593a9e6983578 + INFO: restore file [TEST_PATH]/db/common-2/base/pg_stat/global.stat (5B, 77%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 + INFO: restore file [TEST_PATH]/db/common-2/base/base/32768/33000 (5B, 83%) checksum 7f4c74dc10f61eef43e6ae642606627df1999b34 + INFO: restore file [TEST_PATH]/db/common-2/base/base/1/12000 (4B, 87%) checksum a3b357a3e395e43fcfb19bb13f3c1b5179279593 + INFO: restore file [TEST_PATH]/db/common-2/base/base/32768/PG_VERSION (3B, 90%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/base/16384/PG_VERSION (3B, 93%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 + INFO: restore file [TEST_PATH]/db/common-2/base/base/1/PG_VERSION (3B, 96%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: restore file [TEST_PATH]/db/common-2/base/PG_VERSION (3B, 100%) checksum e1f7a3a299f62225cba076fc6d3d6e677f303482 INFO: wrote [TEST_PATH]/db/common-2/base/recovery.conf INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started) @@ -3044,53 +3382,53 @@ stanza: db full backup: [BACKUP-FULL-2] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 8KB - repository size: 277B, repository backup size: 277B + repository size: 395B, repository backup size: 395B diff backup: [BACKUP-DIFF-2] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 25B - repository size: 362B, repository backup size: 85B + repository size: 480B, repository backup size: 85B backup reference list: [BACKUP-FULL-2] incr backup: [BACKUP-INCR-3] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 13B - repository size: 388B, repository backup size: 53B + repository size: 506B, repository backup size: 53B backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-2] incr backup: [BACKUP-INCR-4] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 8B - repository size: 392B, repository backup size: 28B + repository size: 510B, repository backup size: 28B backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-2], [BACKUP-INCR-3] diff backup: [BACKUP-DIFF-3] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 39B - repository size: 392B, repository backup size: 139B + repository size: 510B, repository backup size: 139B backup reference list: [BACKUP-FULL-2] incr backup: [BACKUP-INCR-5] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 0B - repository size: 392B, repository backup size: 0B + repository size: 510B, repository backup size: 0B backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-3] diff backup: [BACKUP-DIFF-4] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 30B - repository size: 343B, repository backup size: 90B + repository size: 461B, repository backup size: 90B backup reference list: [BACKUP-FULL-2] full backup: [BACKUP-FULL-3] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 8KB - repository size: 372B, repository backup size: 372B + repository size: 490B, repository backup size: 490B diff backup: [BACKUP-DIFF-5] start / stop timestamp: [TIMESTAMP-STR] database size: 8KB, backup size: 9B - repository size: 401B, repository backup size: 29B + repository size: 519B, repository backup size: 29B backup reference list: [BACKUP-FULL-3] stanza: db_empty diff --git a/test/lib/pgBackRestTest/BackupCommonTest.pm b/test/lib/pgBackRestTest/BackupCommonTest.pm index 257d48f56..30c532af6 100644 --- a/test/lib/pgBackRestTest/BackupCommonTest.pm +++ b/test/lib/pgBackRestTest/BackupCommonTest.pm @@ -102,9 +102,11 @@ push @EXPORT, qw(BackRestTestBackup_PgExecuteNoTrans); sub BackRestTestBackup_PgExecuteNoTrans { my $strSql = shift; + my $strDatabase = shift; - # Connect to the db with autocommit on so we can runs statements that can't run in transaction blocks - my $hDb = DBI->connect('dbi:Pg:dbname=postgres;port=' . BackRestTestCommon_DbPortGet . + # Connect to the db with autocommit on so we can run statements that can't run in transaction blocks + my $hDb = DBI->connect('dbi:Pg:dbname=' . (defined($strDatabase) ? $strDatabase : 'postgres') . + ';port=' . BackRestTestCommon_DbPortGet . ';host=' . BackRestTestCommon_DbPathGet(), BackRestTestCommon_UserGet(), undef, @@ -493,13 +495,23 @@ push @EXPORT, qw(BackRestTestBackup_PathCreate); sub BackRestTestBackup_PathCreate { my $oManifestRef = shift; - my $strPath = shift; + my $strTarget = shift; my $strSubPath = shift; my $strMode = shift; # Create final file location - my $strFinalPath = ${$oManifestRef}{&MANIFEST_SECTION_BACKUP_TARGET}{$strPath}{&MANIFEST_SUBKEY_PATH} . - (defined($strSubPath) ? "/${strSubPath}" : ''); + my $strFinalPath = ${$oManifestRef}{&MANIFEST_SECTION_BACKUP_TARGET}{$strTarget}{&MANIFEST_SUBKEY_PATH}; + + # Get tablespace path if this is a tablespace + if ($$oManifestRef{&MANIFEST_SECTION_BACKUP_DB}{&MANIFEST_KEY_DB_VERSION} >= 9.0 && + index($strTarget, DB_PATH_PGTBLSPC . '/') == 0) + { + my $iCatalog = ${$oManifestRef}{&MANIFEST_SECTION_BACKUP_DB}{&MANIFEST_KEY_CATALOG}; + + $strFinalPath .= '/PG_' . ${$oManifestRef}{&MANIFEST_SECTION_BACKUP_DB}{&MANIFEST_KEY_DB_VERSION} . "_${iCatalog}"; + } + + $strFinalPath .= (defined($strSubPath) ? "/${strSubPath}" : ''); # Create the path if (!(-e $strFinalPath)) @@ -1416,6 +1428,13 @@ sub BackRestTestBackup_BackupCompare foreach my $strFile (keys(%{${$oExpectedManifestRef}{$strSection}})) { + if (!defined(${$oExpectedManifestRef}{$strSection}{$strFile}{$strSubKey}) && + defined(${$oExpectedManifestRef}{"${strSection}:default"}{$strSubKey})) + { + ${$oExpectedManifestRef}{$strSection}{$strFile}{$strSubKey} = + ${$oExpectedManifestRef}{"${strSection}:default"}{$strSubKey}; + } + my $strValue = ${$oExpectedManifestRef}{$strSection}{$strFile}{$strSubKey}; if (defined($strValue)) @@ -1797,8 +1816,18 @@ sub BackRestTestBackup_RestoreCompare if ($oActualManifest->get(MANIFEST_SECTION_TARGET_FILE, $strName, MANIFEST_SUBKEY_SIZE) != 0) { - $oActualManifest->set(MANIFEST_SECTION_TARGET_FILE, $strName, MANIFEST_SUBKEY_CHECKSUM, - $oFile->hash(PATH_DB_ABSOLUTE, $oActualManifest->dbPathGet($strSectionPath, $strName))); + my $oStat = fileStat($oActualManifest->dbPathGet($strSectionPath, $strName)); + + if ($oStat->blocks > 0 || S_ISLNK($oStat->mode)) + { + $oActualManifest->set(MANIFEST_SECTION_TARGET_FILE, $strName, MANIFEST_SUBKEY_CHECKSUM, + $oFile->hash(PATH_DB_ABSOLUTE, $oActualManifest->dbPathGet($strSectionPath, $strName))); + } + else + { + $oActualManifest->remove(MANIFEST_SECTION_TARGET_FILE, $strName, MANIFEST_SUBKEY_CHECKSUM); + delete(${$oExpectedManifestRef}{&MANIFEST_SECTION_TARGET_FILE}{$strName}{&MANIFEST_SUBKEY_CHECKSUM}); + } } } @@ -1855,6 +1884,9 @@ sub BackRestTestBackup_RestoreCompare ${$oExpectedManifestRef}{&MANIFEST_SECTION_BACKUP}{&MANIFEST_KEY_ARCHIVE_STOP}); } + # Delete the list of DBs + delete($$oExpectedManifestRef{&MANIFEST_SECTION_DB}); + iniSave("${strTestPath}/actual.manifest", $oActualManifest->{oContent}); iniSave("${strTestPath}/expected.manifest", $oExpectedManifestRef); diff --git a/test/lib/pgBackRestTest/BackupTest.pm b/test/lib/pgBackRestTest/BackupTest.pm index e1e201286..c8d75574a 100755 --- a/test/lib/pgBackRestTest/BackupTest.pm +++ b/test/lib/pgBackRestTest/BackupTest.pm @@ -895,9 +895,26 @@ sub BackRestTestBackup_Test # Create base path BackRestTestBackup_ManifestPathCreate(\%oManifest, MANIFEST_TARGET_PGDATA, 'base'); + BackRestTestBackup_ManifestPathCreate(\%oManifest, MANIFEST_TARGET_PGDATA, 'base/1'); - BackRestTestBackup_ManifestFileCreate(\%oManifest, MANIFEST_TARGET_PGDATA, 'base/base1.txt', 'BASE', + BackRestTestBackup_ManifestFileCreate(\%oManifest, MANIFEST_TARGET_PGDATA, 'base/1/12000', 'BASE', 'a3b357a3e395e43fcfb19bb13f3c1b5179279593', $lTime); + BackRestTestBackup_ManifestFileCreate(\%oManifest, MANIFEST_TARGET_PGDATA, 'base/1/PG_VERSION', '9.3', + 'e1f7a3a299f62225cba076fc6d3d6e677f303482', $lTime); + + BackRestTestBackup_ManifestPathCreate(\%oManifest, MANIFEST_TARGET_PGDATA, 'base/16384'); + + BackRestTestBackup_ManifestFileCreate(\%oManifest, MANIFEST_TARGET_PGDATA, 'base/16384/17000', 'BASE', + 'a3b357a3e395e43fcfb19bb13f3c1b5179279593', $lTime); + BackRestTestBackup_ManifestFileCreate(\%oManifest, MANIFEST_TARGET_PGDATA, 'base/16384/PG_VERSION', '9.3', + 'e1f7a3a299f62225cba076fc6d3d6e677f303482', $lTime); + + BackRestTestBackup_ManifestPathCreate(\%oManifest, MANIFEST_TARGET_PGDATA, 'base/32768'); + + BackRestTestBackup_ManifestFileCreate(\%oManifest, MANIFEST_TARGET_PGDATA, 'base/32768/33000', '33000', + '7f4c74dc10f61eef43e6ae642606627df1999b34', $lTime); + BackRestTestBackup_ManifestFileCreate(\%oManifest, MANIFEST_TARGET_PGDATA, 'base/32768/PG_VERSION', '9.3', + 'e1f7a3a299f62225cba076fc6d3d6e677f303482', $lTime); # Create global path BackRestTestBackup_ManifestPathCreate(\%oManifest, MANIFEST_TARGET_PGDATA, 'global'); @@ -1120,7 +1137,7 @@ sub BackRestTestBackup_Test BackRestTestBackup_PathRemove(\%oManifest, MANIFEST_TARGET_PGDATA, 'pg_clog'); # Remove a file - BackRestTestBackup_FileRemove(\%oManifest, MANIFEST_TARGET_PGDATA, 'base/base1.txt'); + BackRestTestBackup_FileRemove(\%oManifest, MANIFEST_TARGET_PGDATA, 'base/16384/17000'); BackRestTestBackup_Restore($oFile, $strFullBackup, $strStanza, $bRemote, \%oManifest, undef, $bDelta, $bForce, undef, undef, undef, undef, undef, undef, @@ -1133,14 +1150,14 @@ sub BackRestTestBackup_Test BackRestTestBackup_Restore($oFile, $strFullBackup, $strStanza, $bRemote, \%oManifest, undef, $bDelta, $bForce, undef, undef, undef, undef, undef, undef, 'restore all links by mapping', undef, '--log-level-console=detail' . - ' --link-map=pg_stat=../pg_stat' . + ' --link-map=pg_stat=../pg_stat' . ' --link-map=postgresql.conf=../pg_config/postgresql.conf'); # Error when links overlap BackRestTestBackup_Restore($oFile, $strFullBackup, $strStanza, $bRemote, \%oManifest, undef, $bDelta, $bForce, undef, undef, undef, undef, undef, undef, 'restore all links by mapping', ERROR_LINK_DESTINATION, '--log-level-console=warn' . - ' --link-map=pg_stat=../pg_stat' . + ' --link-map=pg_stat=../pg_stat' . ' --link-map=postgresql.conf=../pg_stat/postgresql.conf'); # Error when links still exist on non-delta restore @@ -1292,8 +1309,9 @@ sub BackRestTestBackup_Test # Add tablespace 1 BackRestTestBackup_ManifestTablespaceCreate(\%oManifest, 1); + BackRestTestBackup_ManifestPathCreate(\%oManifest, MANIFEST_TARGET_PGTBLSPC . '/1', '16384'); - BackRestTestBackup_ManifestFileCreate(\%oManifest, MANIFEST_TARGET_PGTBLSPC . '/1', 'tablespace1.txt', 'TBLSPC1', + BackRestTestBackup_ManifestFileCreate(\%oManifest, MANIFEST_TARGET_PGTBLSPC . '/1', '16384/tablespace1.txt', 'TBLSPC1', 'd85de07d6421d90aa9191c11c889bfde43680f0f', $lTime); BackRestTestBackup_ManifestFileCreate(\%oManifest, MANIFEST_TARGET_PGDATA, 'badchecksum.txt', 'BADCHECKSUM', 'f927212cd08d11a42a666b2f04235398e9ceeb51', $lTime); @@ -1317,8 +1335,9 @@ sub BackRestTestBackup_Test # Add tablespace 2 BackRestTestBackup_ManifestTablespaceCreate(\%oManifest, 2); + BackRestTestBackup_ManifestPathCreate(\%oManifest, MANIFEST_TARGET_PGTBLSPC . '/2', '32768'); - BackRestTestBackup_ManifestFileCreate(\%oManifest, MANIFEST_TARGET_PGTBLSPC . '/2', 'tablespace2.txt', 'TBLSPC2', + BackRestTestBackup_ManifestFileCreate(\%oManifest, MANIFEST_TARGET_PGTBLSPC . '/2', '32768/tablespace2.txt', 'TBLSPC2', 'dc7f76e43c46101b47acc55ae4d593a9e6983578', $lTime); @@ -1410,8 +1429,8 @@ sub BackRestTestBackup_Test BackRestTestBackup_ManifestTablespaceDrop(\%oManifest, 1, 2); - BackRestTestBackup_ManifestFileCreate(\%oManifest, MANIFEST_TARGET_PGTBLSPC . '/2', 'tablespace2b.txt', 'TBLSPC2B', - 'e324463005236d83e6e54795dbddd20a74533bf3', $lTime); + BackRestTestBackup_ManifestFileCreate(\%oManifest, MANIFEST_TARGET_PGTBLSPC . '/2', '32768/tablespace2b.txt', + 'TBLSPC2B', 'e324463005236d83e6e54795dbddd20a74533bf3', $lTime); # Munge the version to make sure it gets corrected on the next run BackRestTestBackup_ManifestMunge($oFile, $bRemote, $strBackup, INI_SECTION_BACKREST, INI_KEY_VERSION, undef, @@ -1431,7 +1450,7 @@ sub BackRestTestBackup_Test executeTest('rm ' . BackRestTestCommon_RepoPathGet() . "/backup/${strStanza}/backup.info", {bRemote => $bRemote}); } - BackRestTestBackup_ManifestFileCreate(\%oManifest, MANIFEST_TARGET_PGDATA, 'base/base1.txt', 'BASEUPDT', + BackRestTestBackup_ManifestFileCreate(\%oManifest, MANIFEST_TARGET_PGDATA, 'base/16384/17000', 'BASEUPDT', '9a53d532e27785e681766c98516a5e93f096a501', $lTime); $strBackup = BackRestTestBackup_BackupSynthetic($strType, $strStanza, \%oManifest, 'update files', @@ -1457,7 +1476,7 @@ sub BackRestTestBackup_Test {strTest => TEST_MANIFEST_BUILD, fTestDelay => 1, strOptionalParam => '--log-level-console=detail'}); - BackRestTestBackup_FileRemove(\%oManifest, MANIFEST_TARGET_PGDATA, 'base/base1.txt'); + BackRestTestBackup_FileRemove(\%oManifest, MANIFEST_TARGET_PGDATA, 'base/16384/17000'); $strBackup = BackRestTestBackup_BackupEnd(\%oManifest); @@ -1470,18 +1489,18 @@ sub BackRestTestBackup_Test $strType = 'diff'; - BackRestTestBackup_ManifestFileRemove(\%oManifest, MANIFEST_TARGET_PGDATA, 'base/base1.txt'); + BackRestTestBackup_ManifestFileRemove(\%oManifest, MANIFEST_TARGET_PGDATA, 'base/16384/17000'); - BackRestTestBackup_ManifestFileRemove(\%oManifest, MANIFEST_TARGET_PGTBLSPC . '/2', 'tablespace2b.txt', true); - BackRestTestBackup_ManifestFileCreate(\%oManifest, MANIFEST_TARGET_PGTBLSPC . '/2', 'tablespace2c.txt', 'TBLSPC2C', + BackRestTestBackup_ManifestFileRemove(\%oManifest, MANIFEST_TARGET_PGTBLSPC . '/2', '32768/tablespace2b.txt', true); + BackRestTestBackup_ManifestFileCreate(\%oManifest, MANIFEST_TARGET_PGTBLSPC . '/2', '32768/tablespace2c.txt', 'TBLSPC2C', 'ad7df329ab97a1e7d35f1ff0351c079319121836', $lTime); BackRestTestBackup_BackupBegin($strType, $strStanza, 'remove files during backup', {strTest => TEST_MANIFEST_BUILD, fTestDelay => 1, strOptionalParam => '--log-level-console=detail'}); - BackRestTestBackup_ManifestFileCreate(\%oManifest, MANIFEST_TARGET_PGTBLSPC . '/2', 'tablespace2c.txt', 'TBLSPCBIGGER', - 'dfcb8679956b734706cf87259d50c88f83e80e66', $lTime); + BackRestTestBackup_ManifestFileCreate(\%oManifest, MANIFEST_TARGET_PGTBLSPC . '/2', '32768/tablespace2c.txt', + 'TBLSPCBIGGER', 'dfcb8679956b734706cf87259d50c88f83e80e66', $lTime); BackRestTestBackup_ManifestFileRemove(\%oManifest, MANIFEST_TARGET_PGDATA, 'base/base2.txt', true); @@ -1492,7 +1511,7 @@ sub BackRestTestBackup_Test $strType = 'full'; BackRestTestBackup_ManifestReference(\%oManifest); - BackRestTestBackup_ManifestFileCreate(\%oManifest, MANIFEST_TARGET_PGDATA, 'base/base1.txt', 'BASEUPDT2', + BackRestTestBackup_ManifestFileCreate(\%oManifest, MANIFEST_TARGET_PGDATA, 'base/16384/17000', 'BASEUPDT2', '7579ada0808d7f98087a0a586d0df9de009cdc33', $lTime); $strFullBackup = BackRestTestBackup_BackupSynthetic($strType, $strStanza, \%oManifest, 'update file', @@ -1518,6 +1537,54 @@ sub BackRestTestBackup_Test $strBackup = BackRestTestBackup_BackupSynthetic($strType, $strStanza, \%oManifest, 'add file', {strOptionalParam => '--log-level-console=detail'}); + # Selective Restore + #----------------------------------------------------------------------------------------------------------------------- + $bDelta = true; + + # Remove mapping for tablespace 1 + delete($oRemapHash{&MANIFEST_TARGET_PGTBLSPC . '/1'}); + + # Remove checksum to match zeroed files + delete($oManifest{&MANIFEST_SECTION_TARGET_FILE}{'pg_data/base/32768/33000'}{&MANIFEST_SUBKEY_CHECKSUM}); + delete($oManifest{&MANIFEST_SECTION_TARGET_FILE}{'pg_tblspc/2/PG_9.3_201306121/32768/tablespace2.txt'} + {&MANIFEST_SUBKEY_CHECKSUM}); + delete($oManifest{&MANIFEST_SECTION_TARGET_FILE}{'pg_tblspc/2/PG_9.3_201306121/32768/tablespace2c.txt'} + {&MANIFEST_SUBKEY_CHECKSUM}); + + BackRestTestBackup_Restore($oFile, OPTION_DEFAULT_RESTORE_SET, $strStanza, $bRemote, \%oManifest, \%oRemapHash, + $bDelta, $bForce, undef, undef, undef, undef, undef, undef, + 'selective restore 16384', undef, + "--log-level-console=detail --db-include=16384"); + + # Restore checksum values for next test + $oManifest{&MANIFEST_SECTION_TARGET_FILE}{'pg_data/base/32768/33000'}{&MANIFEST_SUBKEY_CHECKSUM} = + '7f4c74dc10f61eef43e6ae642606627df1999b34'; + $oManifest{&MANIFEST_SECTION_TARGET_FILE}{'pg_tblspc/2/PG_9.3_201306121/32768/tablespace2.txt'} + {&MANIFEST_SUBKEY_CHECKSUM} = 'dc7f76e43c46101b47acc55ae4d593a9e6983578'; + $oManifest{&MANIFEST_SECTION_TARGET_FILE}{'pg_tblspc/2/PG_9.3_201306121/32768/tablespace2c.txt'} + {&MANIFEST_SUBKEY_CHECKSUM} = 'dfcb8679956b734706cf87259d50c88f83e80e66'; + + # Remove chacksum to match zeroed file + delete($oManifest{&MANIFEST_SECTION_TARGET_FILE}{'pg_data/base/16384/17000'}{&MANIFEST_SUBKEY_CHECKSUM}); + + BackRestTestBackup_Restore($oFile, OPTION_DEFAULT_RESTORE_SET, $strStanza, $bRemote, \%oManifest, \%oRemapHash, + $bDelta, $bForce, undef, undef, undef, undef, undef, undef, + 'selective restore 32768', undef, + "--log-level-console=detail --db-include=32768"); + + $oManifest{&MANIFEST_SECTION_TARGET_FILE}{'pg_data/base/16384/17000'}{&MANIFEST_SUBKEY_CHECKSUM} = + '7579ada0808d7f98087a0a586d0df9de009cdc33'; + + BackRestTestBackup_Restore($oFile, OPTION_DEFAULT_RESTORE_SET, $strStanza, $bRemote, \%oManifest, \%oRemapHash, + $bDelta, $bForce, undef, undef, undef, undef, undef, undef, + 'error on invalid id', ERROR_DB_MISSING, + "--log-level-console=warn --db-include=7777"); + + BackRestTestBackup_Restore($oFile, OPTION_DEFAULT_RESTORE_SET, $strStanza, $bRemote, \%oManifest, \%oRemapHash, + $bDelta, $bForce, undef, undef, undef, undef, undef, undef, + 'error on system id', ERROR_DB_INVALID, + "--log-level-console=warn --db-include=1"); + # Compact Restore #----------------------------------------------------------------------------------------------------------------------- $bDelta = false; @@ -1528,7 +1595,6 @@ sub BackRestTestBackup_Test BackRestTestCommon_PathCreate($strDbPath); $oRemapHash{&MANIFEST_TARGET_PGDATA} = $strDbPath; - delete($oRemapHash{&MANIFEST_TARGET_PGTBLSPC . '/1'}); delete($oRemapHash{&MANIFEST_TARGET_PGTBLSPC . '/2'}); BackRestTestBackup_Restore($oFile, OPTION_DEFAULT_RESTORE_SET, $strStanza, $bRemote, \%oManifest, \%oRemapHash, @@ -1553,7 +1619,7 @@ sub BackRestTestBackup_Test BackRestTestBackup_Info('bogus', INFO_OUTPUT_JSON, false); # Dump out history path at the end to verify all history files are being recorded. This test is only performed locally - # because for some reason sort order is different when this command is executed via ssh (even though the content if the + # because for some reason sort order is different when this command is executed via ssh (even though the content of the # directory is identical). #----------------------------------------------------------------------------------------------------------------------- if ($bNeutralTest && !$bRemote) @@ -1669,6 +1735,10 @@ sub BackRestTestBackup_Test my $strNameMessage = 'name'; my $strTimelineMessage = 'timeline3'; + # Create two new databases + BackRestTestBackup_PgExecuteNoTrans("create database test1"); + BackRestTestBackup_PgExecuteNoTrans("create database test2"); + # Test invalid archive command #----------------------------------------------------------------------------------------------------------------------- $strType = BACKUP_TYPE_FULL; @@ -1815,6 +1885,15 @@ sub BackRestTestBackup_Test &log(INFO, " name target is ${strNameTarget}"); + # Create a table and data in database test2 + #----------------------------------------------------------------------------------------------------------------------- + BackRestTestBackup_PgExecuteNoTrans('create table test (id int);' . + 'insert into test values (1);' . + 'create table test_ts1 (id int) tablespace ts1;' . + 'insert into test_ts1 values (2);', + 'test2'); + BackRestTestBackup_PgSwitchXlog(); + # Restore (type = default) #----------------------------------------------------------------------------------------------------------------------- $bDelta = false; @@ -1862,11 +1941,28 @@ sub BackRestTestBackup_Test BackRestTestBackup_Restore($oFile, OPTION_DEFAULT_RESTORE_SET, $strStanza, $bRemote, undef, undef, $bDelta, $bForce, $strType, $strTarget, $bTargetExclusive, $strTargetAction, $strTargetTimeline, - $oRecoveryHashRef, $strComment, $iExpectedExitStatus); + $oRecoveryHashRef, $strComment, $iExpectedExitStatus, ' --db-include=test1'); BackRestTestBackup_ClusterStart(); BackRestTestBackup_PgSelectOneTest('select message from test', $strNameMessage); + # Now it should be OK to drop database test2 + BackRestTestBackup_PgExecuteNoTrans("drop database test2"); + + # The test table lives in ts1 so it needs to be moved or dropped + if (BackRestTestCommon_DbVersion() >= 9.0) + { + BackRestTestBackup_PgExecute('alter table test set tablespace pg_default'); + } + # Drop for older versions + else + { + BackRestTestBackup_PgExecute('drop table test'); + } + + # And drop the tablespace + BackRestTestBackup_PgExecuteNoTrans("drop tablespace ts1"); + # Restore (restore type = immediate, inclusive) #----------------------------------------------------------------------------------------------------------------------- if (BackRestTestCommon_DbVersion() >= 9.4) @@ -1913,7 +2009,6 @@ sub BackRestTestBackup_Test executeTest('rm -rf ' . BackRestTestCommon_DbCommonPathGet() . "/*"); executeTest('rm -rf ' . BackRestTestCommon_DbPathGet() . "/pg_xlog/*"); - executeTest('rm -rf ' . BackRestTestCommon_DbTablespacePathGet(1)); BackRestTestBackup_Restore($oFile, $strIncrBackup, $strStanza, $bRemote, undef, undef, $bDelta, $bForce, $strType, $strTarget, $bTargetExclusive, $strTargetAction, $strTargetTimeline,