1
0
mirror of https://github.com/pgbackrest/pgbackrest.git synced 2025-01-18 04:58:51 +02:00

Closed #19: The following tablespace checks have been added: paths or files in pg_tblspc, relative links in pg_tblspc, tablespaces in $PGDATA. All three will generate errors.

This commit is contained in:
David Steele 2016-01-15 07:07:00 -05:00
parent 67fb7a23bc
commit e91e481f3d
15 changed files with 286 additions and 16 deletions

View File

@ -11,6 +11,8 @@ __No Release Date Set__
* Support for `recovery_target = 'immediate'` recovery setting introduced in PostgreSQL 9.4.
* The following tablespace checks have been added: paths or files in pg_tblspc, relative links in pg_tblspc, tablespaces in $PGDATA. All three will generate errors.
## v0.89: Timeout Bug Fix and Restore Read-Only Repositories
__Released December 24, 2015__

View File

@ -20,6 +20,9 @@
<release-feature>
<text>Support for <setting>recovery_target = 'immediate'</setting> recovery setting introduced in <postgres/> 9.4.</text>
</release-feature>
<release-feature>
<text>The following tablespace checks have been added: paths or files in pg_tblspc, relative links in pg_tblspc, tablespaces in $PGDATA. All three will generate errors.</text>
</release-feature>
</release-feature-bullet-list>
</changelog-release>

View File

@ -106,6 +106,12 @@ use constant ERROR_FEATURE_NOT_SUPPORTED => ERROR_MIN
push @EXPORT, qw(ERROR_FEATURE_NOT_SUPPORTED);
use constant ERROR_ARCHIVE_COMMAND_INVALID => ERROR_MINIMUM + 43;
push @EXPORT, qw(ERROR_ARCHIVE_COMMAND_INVALID);
use constant ERROR_LINK_EXPECTED => ERROR_MINIMUM + 44;
push @EXPORT, qw(ERROR_LINK_EXPECTED);
use constant ERROR_ABSOLUTE_LINK_EXPECTED => ERROR_MINIMUM + 45;
push @EXPORT, qw(ERROR_ABSOLUTE_LINK_EXPECTED);
use constant ERROR_TABLESPACE_IN_PGDATA => ERROR_MINIMUM + 46;
push @EXPORT, qw(ERROR_TABLESPACE_IN_PGDATA);
use constant ERROR_INVALID_VALUE => ERROR_MAXIMUM - 1;
push @EXPORT, qw(ERROR_INVALID_VALUE);

View File

@ -433,11 +433,6 @@ sub build
next;
}
if ($oTablespaceManifestHash{name}{$strName}{type} ne 'l')
{
confess &log(ERROR, PATH_PG_TBLSPC . "/${strName} is not a link");
}
logDebugMisc($strOperation, "found tablespace ${strName}");
${$oTablespaceMapRef}{oid}{$strName}{name} = $strName;
@ -464,8 +459,8 @@ sub build
next;
}
my $cType = $oManifestHash{name}{"${strName}"}{type};
my $strLinkDestination = $oManifestHash{name}{"${strName}"}{link_destination};
my $cType = $oManifestHash{name}{$strName}{type};
my $strLinkDestination = $oManifestHash{name}{$strName}{link_destination};
my $strSection = "${strLevel}:path";
if ($cType eq 'f')
@ -481,29 +476,53 @@ sub build
confess &log(ASSERT, "unrecognized file type $cType for file $strName");
}
# Make sure that pg_tblspc contains only absolute links that do not point inside PGDATA
if (index($strName, PATH_PG_TBLSPC . '/') == 0 && $strLevel eq MANIFEST_KEY_BASE)
{
# Check for files in pg_tblspc that are not links
if ($oManifestHash{name}{$strName}{type} ne 'l')
{
confess &log(ERROR, "/${strName} is not a symlink - pg_tblspc should contain only symlinks", ERROR_LINK_EXPECTED);
}
# Check for relative link targets
if (index($oManifestHash{name}{$strName}{link_destination}, '/') != 0)
{
confess &log(ERROR, 'tablespace symlink ' . $oManifestHash{name}{$strName}{link_destination} .
' must be absolute', ERROR_ABSOLUTE_LINK_EXPECTED);
}
# Check for tablespaces in PGDATA
if (index($oManifestHash{name}{$strName}{link_destination}, $strDbClusterPath) == 0)
{
confess &log(ERROR, 'tablespace symlink ' . $oManifestHash{name}{$strName}{link_destination} .
' must not be in \$PGDATA', ERROR_TABLESPACE_IN_PGDATA);
}
}
# User and group required for all types
$self->set($strSection, $strName, MANIFEST_SUBKEY_USER, $oManifestHash{name}{"${strName}"}{user});
$self->set($strSection, $strName, MANIFEST_SUBKEY_GROUP, $oManifestHash{name}{"${strName}"}{group});
$self->set($strSection, $strName, MANIFEST_SUBKEY_USER, $oManifestHash{name}{$strName}{user});
$self->set($strSection, $strName, MANIFEST_SUBKEY_GROUP, $oManifestHash{name}{$strName}{group});
# Mode for required file and path type only
if ($cType eq 'f' || $cType eq 'd')
{
$self->set($strSection, $strName, MANIFEST_SUBKEY_MODE, $oManifestHash{name}{"${strName}"}{mode});
$self->set($strSection, $strName, MANIFEST_SUBKEY_MODE, $oManifestHash{name}{$strName}{mode});
}
# Modification time and size required for file type only
if ($cType eq 'f')
{
$self->set($strSection, $strName, MANIFEST_SUBKEY_TIMESTAMP,
$oManifestHash{name}{"${strName}"}{modification_time} + 0);
$self->set($strSection, $strName, MANIFEST_SUBKEY_SIZE, $oManifestHash{name}{"${strName}"}{size} + 0);
$oManifestHash{name}{$strName}{modification_time} + 0);
$self->set($strSection, $strName, MANIFEST_SUBKEY_SIZE, $oManifestHash{name}{$strName}{size} + 0);
}
# Link destination required for link type only
if ($cType eq 'l')
{
$self->set($strSection, $strName, MANIFEST_SUBKEY_DESTINATION,
$oManifestHash{name}{"${strName}"}{link_destination});
$oManifestHash{name}{$strName}{link_destination});
# If this is a tablespace then follow the link
if (index($strName, PATH_PG_TBLSPC . '/') == 0 && $strLevel eq MANIFEST_KEY_BASE)

View File

@ -859,8 +859,7 @@ sub BackRestTestBackup_LinkCreate
my $strPathFile = ${$oManifestRef}{&MANIFEST_SECTION_BACKUP_PATH}{$strPath}{&MANIFEST_SUBKEY_PATH} . "/${strFile}";
# Create the file
symlink($strDestination, $strPathFile)
or confess "unable to link ${strPathFile} to ${strDestination}";
BackRestTestCommon_LinkCreate($strPathFile, $strDestination);
# Return path to created file
return $strPathFile;

View File

@ -1098,6 +1098,40 @@ sub BackRestTestBackup_Test
$oInfo{db}{&MANIFEST_KEY_CATALOG} = $iCatalogVersion;
BackRestTestCommon_iniSave($strInfoFile, \%oInfo, $bRemote, true);
# Test broken tablespace configuration
#-----------------------------------------------------------------------------------------------------------------------
$strType = 'incr';
my $strTblSpcPath = BackRestTestCommon_DbCommonPathGet() . '/pg_tblspc';
# Create a directory in pg_tablespace
BackRestTestCommon_PathCreate("${strTblSpcPath}/path");
BackRestTestBackup_BackupSynthetic($strType, $strStanza, \%oManifest, 'invalid path in pg_tblspc',
{iExpectedExitStatus => ERROR_LINK_EXPECTED,
strOptionalParam => '--log-level-console=info'});
BackRestTestCommon_PathRemove("${strTblSpcPath}/path");
# Create a relative link
BackRestTestCommon_LinkCreate("${strTblSpcPath}/99999", '../invalid_tblspc');
BackRestTestBackup_BackupSynthetic($strType, $strStanza, \%oManifest, 'invalid relative link in pg_tblspc',
{iExpectedExitStatus => ERROR_ABSOLUTE_LINK_EXPECTED,
strOptionalParam => '--log-level-console=info'});
BackRestTestCommon_FileRemove("${strTblSpcPath}/99999");
# Create tablespace in PGDATA
BackRestTestCommon_PathCreate(BackRestTestCommon_DbCommonPathGet() . '/invalid_tblspc');
BackRestTestCommon_LinkCreate("${strTblSpcPath}/99999", BackRestTestCommon_DbCommonPathGet() . '/invalid_tblspc');
BackRestTestBackup_BackupSynthetic($strType, $strStanza, \%oManifest, 'invalid tablespace in $PGDATA',
{iExpectedExitStatus => ERROR_TABLESPACE_IN_PGDATA,
strOptionalParam => '--log-level-console=info'});
BackRestTestCommon_PathRemove(BackRestTestCommon_DbCommonPathGet() . '/invalid_tblspc');
BackRestTestCommon_FileRemove("${strTblSpcPath}/99999");
# Incr backup
#-----------------------------------------------------------------------------------------------------------------------
$strType = 'incr';

View File

@ -46,7 +46,7 @@ our @EXPORT = qw(BackRestTestCommon_Create BackRestTestCommon_Drop BackRestTestC
BackRestTestCommon_DbPortGet BackRestTestCommon_iniLoad BackRestTestCommon_iniSave BackRestTestCommon_DbVersion
BackRestTestCommon_CommandPsqlGet BackRestTestCommon_DropRepo BackRestTestCommon_CreateRepo
BackRestTestCommon_manifestLoad BackRestTestCommon_manifestSave BackRestTestCommon_CommandMainAbsGet
BackRestTestCommon_CommandRemoteFullGet BackRestTestCommon_BasePathGet);
BackRestTestCommon_CommandRemoteFullGet BackRestTestCommon_BasePathGet BackRestTestCommon_LinkCreate);
my $strPgSqlBin;
my $strCommonStanza;
@ -220,6 +220,21 @@ sub BackRestTestCommon_Cleanup
return !$bNoCleanup && !$bDryRun;
}
####################################################################################################################################
# BackRestTestCommon_LinkCreate
#
# Create a symlink
####################################################################################################################################
sub BackRestTestCommon_LinkCreate
{
my $strLink = shift;
my $strDestination = shift;
# Create the file
symlink($strDestination, $strLink)
or confess "unable to link ${strLink} to ${strDestination}";
}
####################################################################################################################################
# BackRestTestCommon_PathCreate
#

View File

@ -703,6 +703,30 @@ DEBUG: Exit::exitSafe(): iExitCode = 126, strSignal = [undef]
INFO: backup stop
DEBUG: Common:::Lock::lockRelease(): bFailOnNoLock = false
incr backup (invalid path in pg_tblspc)
> [BACKREST_BIN] --config=[TEST_PATH]/db/pg_backrest.conf --no-start-stop --log-level-console=info --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------
INFO: backup start: --no-compress --config=[TEST_PATH]/db/pg_backrest.conf --config-remote=[TEST_PATH]/backrest/pg_backrest.conf --db-path=[TEST_PATH]/db/common --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --log-level-console=info --log-level-file=trace --no-start-stop --repo-path=[TEST_PATH]/backrest --repo-remote-path=[TEST_PATH]/backrest --stanza=db --start-fast
INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1]
ERROR: [144]: /pg_tblspc/path is not a symlink - pg_tblspc should contain only symlinks
INFO: backup stop
incr backup (invalid relative link in pg_tblspc)
> [BACKREST_BIN] --config=[TEST_PATH]/db/pg_backrest.conf --no-start-stop --log-level-console=info --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------
INFO: backup start: --no-compress --config=[TEST_PATH]/db/pg_backrest.conf --config-remote=[TEST_PATH]/backrest/pg_backrest.conf --db-path=[TEST_PATH]/db/common --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --log-level-console=info --log-level-file=trace --no-start-stop --repo-path=[TEST_PATH]/backrest --repo-remote-path=[TEST_PATH]/backrest --stanza=db --start-fast
INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1]
ERROR: [145]: tablespace symlink ../invalid_tblspc must be absolute
INFO: backup stop
incr backup (invalid tablespace in $PGDATA)
> [BACKREST_BIN] --config=[TEST_PATH]/db/pg_backrest.conf --no-start-stop --log-level-console=info --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------
INFO: backup start: --no-compress --config=[TEST_PATH]/db/pg_backrest.conf --config-remote=[TEST_PATH]/backrest/pg_backrest.conf --db-path=[TEST_PATH]/db/common --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --log-level-console=info --log-level-file=trace --no-start-stop --repo-path=[TEST_PATH]/backrest --repo-remote-path=[TEST_PATH]/backrest --stanza=db --start-fast
INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1]
ERROR: [146]: tablespace symlink [TEST_PATH]/db/common/invalid_tblspc must not be in \$PGDATA
INFO: backup stop
incr backup (add tablespace 1)
> [BACKREST_BIN] --config=[TEST_PATH]/db/pg_backrest.conf --no-start-stop --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------

View File

@ -594,6 +594,30 @@ DEBUG: Exit::exitSafe(): iExitCode = 126, strSignal = [undef]
INFO: backup stop
DEBUG: Common:::Lock::lockRelease(): bFailOnNoLock = false
incr backup (invalid path in pg_tblspc)
> [BACKREST_BIN] --config=[TEST_PATH]/db/pg_backrest.conf --no-start-stop --log-level-console=info --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------
INFO: backup start: --no-compress --config=[TEST_PATH]/db/pg_backrest.conf --config-remote=[TEST_PATH]/backrest/pg_backrest.conf --db-path=[TEST_PATH]/db/common --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --hardlink --log-level-console=info --log-level-file=trace --no-start-stop --repo-path=[TEST_PATH]/backrest --repo-remote-path=[TEST_PATH]/backrest --stanza=db --start-fast
INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1]
ERROR: [144]: /pg_tblspc/path is not a symlink - pg_tblspc should contain only symlinks
INFO: backup stop
incr backup (invalid relative link in pg_tblspc)
> [BACKREST_BIN] --config=[TEST_PATH]/db/pg_backrest.conf --no-start-stop --log-level-console=info --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------
INFO: backup start: --no-compress --config=[TEST_PATH]/db/pg_backrest.conf --config-remote=[TEST_PATH]/backrest/pg_backrest.conf --db-path=[TEST_PATH]/db/common --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --hardlink --log-level-console=info --log-level-file=trace --no-start-stop --repo-path=[TEST_PATH]/backrest --repo-remote-path=[TEST_PATH]/backrest --stanza=db --start-fast
INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1]
ERROR: [145]: tablespace symlink ../invalid_tblspc must be absolute
INFO: backup stop
incr backup (invalid tablespace in $PGDATA)
> [BACKREST_BIN] --config=[TEST_PATH]/db/pg_backrest.conf --no-start-stop --log-level-console=info --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------
INFO: backup start: --no-compress --config=[TEST_PATH]/db/pg_backrest.conf --config-remote=[TEST_PATH]/backrest/pg_backrest.conf --db-path=[TEST_PATH]/db/common --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --hardlink --log-level-console=info --log-level-file=trace --no-start-stop --repo-path=[TEST_PATH]/backrest --repo-remote-path=[TEST_PATH]/backrest --stanza=db --start-fast
INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1]
ERROR: [146]: tablespace symlink [TEST_PATH]/db/common/invalid_tblspc must not be in \$PGDATA
INFO: backup stop
incr backup (add tablespace 1)
> [BACKREST_BIN] --config=[TEST_PATH]/db/pg_backrest.conf --no-start-stop --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------

View File

@ -590,6 +590,30 @@ DEBUG: Exit::exitSafe(): iExitCode = 126, strSignal = [undef]
INFO: backup stop
DEBUG: Common:::Lock::lockRelease(): bFailOnNoLock = false
incr backup (invalid path in pg_tblspc)
> [BACKREST_BIN] --config=[TEST_PATH]/db/pg_backrest.conf --no-start-stop --log-level-console=info --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------
INFO: backup start: --config=[TEST_PATH]/db/pg_backrest.conf --config-remote=[TEST_PATH]/backrest/pg_backrest.conf --db-path=[TEST_PATH]/db/common --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --log-level-console=info --log-level-file=trace --no-start-stop --repo-path=[TEST_PATH]/backrest --repo-remote-path=[TEST_PATH]/backrest --stanza=db --start-fast
INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1]
ERROR: [144]: /pg_tblspc/path is not a symlink - pg_tblspc should contain only symlinks
INFO: backup stop
incr backup (invalid relative link in pg_tblspc)
> [BACKREST_BIN] --config=[TEST_PATH]/db/pg_backrest.conf --no-start-stop --log-level-console=info --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------
INFO: backup start: --config=[TEST_PATH]/db/pg_backrest.conf --config-remote=[TEST_PATH]/backrest/pg_backrest.conf --db-path=[TEST_PATH]/db/common --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --log-level-console=info --log-level-file=trace --no-start-stop --repo-path=[TEST_PATH]/backrest --repo-remote-path=[TEST_PATH]/backrest --stanza=db --start-fast
INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1]
ERROR: [145]: tablespace symlink ../invalid_tblspc must be absolute
INFO: backup stop
incr backup (invalid tablespace in $PGDATA)
> [BACKREST_BIN] --config=[TEST_PATH]/db/pg_backrest.conf --no-start-stop --log-level-console=info --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------
INFO: backup start: --config=[TEST_PATH]/db/pg_backrest.conf --config-remote=[TEST_PATH]/backrest/pg_backrest.conf --db-path=[TEST_PATH]/db/common --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --log-level-console=info --log-level-file=trace --no-start-stop --repo-path=[TEST_PATH]/backrest --repo-remote-path=[TEST_PATH]/backrest --stanza=db --start-fast
INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1]
ERROR: [146]: tablespace symlink [TEST_PATH]/db/common/invalid_tblspc must not be in \$PGDATA
INFO: backup stop
incr backup (add tablespace 1)
> [BACKREST_BIN] --config=[TEST_PATH]/db/pg_backrest.conf --no-start-stop --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------

View File

@ -592,6 +592,30 @@ DEBUG: Exit::exitSafe(): iExitCode = 126, strSignal = [undef]
INFO: backup stop
DEBUG: Common:::Lock::lockRelease(): bFailOnNoLock = false
incr backup (invalid path in pg_tblspc)
> [BACKREST_BIN] --config=[TEST_PATH]/db/pg_backrest.conf --no-start-stop --log-level-console=info --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------
INFO: backup start: --config=[TEST_PATH]/db/pg_backrest.conf --config-remote=[TEST_PATH]/backrest/pg_backrest.conf --db-path=[TEST_PATH]/db/common --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --hardlink --log-level-console=info --log-level-file=trace --no-start-stop --repo-path=[TEST_PATH]/backrest --repo-remote-path=[TEST_PATH]/backrest --stanza=db --start-fast
INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1]
ERROR: [144]: /pg_tblspc/path is not a symlink - pg_tblspc should contain only symlinks
INFO: backup stop
incr backup (invalid relative link in pg_tblspc)
> [BACKREST_BIN] --config=[TEST_PATH]/db/pg_backrest.conf --no-start-stop --log-level-console=info --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------
INFO: backup start: --config=[TEST_PATH]/db/pg_backrest.conf --config-remote=[TEST_PATH]/backrest/pg_backrest.conf --db-path=[TEST_PATH]/db/common --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --hardlink --log-level-console=info --log-level-file=trace --no-start-stop --repo-path=[TEST_PATH]/backrest --repo-remote-path=[TEST_PATH]/backrest --stanza=db --start-fast
INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1]
ERROR: [145]: tablespace symlink ../invalid_tblspc must be absolute
INFO: backup stop
incr backup (invalid tablespace in $PGDATA)
> [BACKREST_BIN] --config=[TEST_PATH]/db/pg_backrest.conf --no-start-stop --log-level-console=info --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------
INFO: backup start: --config=[TEST_PATH]/db/pg_backrest.conf --config-remote=[TEST_PATH]/backrest/pg_backrest.conf --db-path=[TEST_PATH]/db/common --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --hardlink --log-level-console=info --log-level-file=trace --no-start-stop --repo-path=[TEST_PATH]/backrest --repo-remote-path=[TEST_PATH]/backrest --stanza=db --start-fast
INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1]
ERROR: [146]: tablespace symlink [TEST_PATH]/db/common/invalid_tblspc must not be in \$PGDATA
INFO: backup stop
incr backup (add tablespace 1)
> [BACKREST_BIN] --config=[TEST_PATH]/db/pg_backrest.conf --no-start-stop --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------

View File

@ -899,6 +899,30 @@ DEBUG: Exit::exitSafe(): iExitCode = 126, strSignal = [undef]
INFO: backup stop
DEBUG: Common:::Lock::lockRelease(): bFailOnNoLock = false
incr backup (invalid path in pg_tblspc)
> [BACKREST_BIN] --config=[TEST_PATH]/backrest/pg_backrest.conf --no-start-stop --log-level-console=info --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------
INFO: backup start: --cmd-remote=[BACKREST_BIN] --no-compress --config=[TEST_PATH]/backrest/pg_backrest.conf --config-remote=[TEST_PATH]/db/pg_backrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --log-level-console=info --log-level-file=trace --no-start-stop --repo-path=[TEST_PATH]/backrest --repo-remote-path=[TEST_PATH]/backrest --stanza=db --start-fast
INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1]
ERROR: [144]: /pg_tblspc/path is not a symlink - pg_tblspc should contain only symlinks
INFO: backup stop
incr backup (invalid relative link in pg_tblspc)
> [BACKREST_BIN] --config=[TEST_PATH]/backrest/pg_backrest.conf --no-start-stop --log-level-console=info --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------
INFO: backup start: --cmd-remote=[BACKREST_BIN] --no-compress --config=[TEST_PATH]/backrest/pg_backrest.conf --config-remote=[TEST_PATH]/db/pg_backrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --log-level-console=info --log-level-file=trace --no-start-stop --repo-path=[TEST_PATH]/backrest --repo-remote-path=[TEST_PATH]/backrest --stanza=db --start-fast
INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1]
ERROR: [145]: tablespace symlink ../invalid_tblspc must be absolute
INFO: backup stop
incr backup (invalid tablespace in $PGDATA)
> [BACKREST_BIN] --config=[TEST_PATH]/backrest/pg_backrest.conf --no-start-stop --log-level-console=info --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------
INFO: backup start: --cmd-remote=[BACKREST_BIN] --no-compress --config=[TEST_PATH]/backrest/pg_backrest.conf --config-remote=[TEST_PATH]/db/pg_backrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --log-level-console=info --log-level-file=trace --no-start-stop --repo-path=[TEST_PATH]/backrest --repo-remote-path=[TEST_PATH]/backrest --stanza=db --start-fast
INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1]
ERROR: [146]: tablespace symlink [TEST_PATH]/db/common/invalid_tblspc must not be in \$PGDATA
INFO: backup stop
incr backup (add tablespace 1)
> [BACKREST_BIN] --config=[TEST_PATH]/backrest/pg_backrest.conf --no-start-stop --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------

View File

@ -662,6 +662,30 @@ DEBUG: Exit::exitSafe(): iExitCode = 126, strSignal = [undef]
INFO: backup stop
DEBUG: Common:::Lock::lockRelease(): bFailOnNoLock = false
incr backup (invalid path in pg_tblspc)
> [BACKREST_BIN] --config=[TEST_PATH]/backrest/pg_backrest.conf --no-start-stop --log-level-console=info --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------
INFO: backup start: --cmd-remote=[BACKREST_BIN] --no-compress --config=[TEST_PATH]/backrest/pg_backrest.conf --config-remote=[TEST_PATH]/db/pg_backrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --hardlink --log-level-console=info --log-level-file=trace --no-start-stop --repo-path=[TEST_PATH]/backrest --repo-remote-path=[TEST_PATH]/backrest --stanza=db --start-fast
INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1]
ERROR: [144]: /pg_tblspc/path is not a symlink - pg_tblspc should contain only symlinks
INFO: backup stop
incr backup (invalid relative link in pg_tblspc)
> [BACKREST_BIN] --config=[TEST_PATH]/backrest/pg_backrest.conf --no-start-stop --log-level-console=info --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------
INFO: backup start: --cmd-remote=[BACKREST_BIN] --no-compress --config=[TEST_PATH]/backrest/pg_backrest.conf --config-remote=[TEST_PATH]/db/pg_backrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --hardlink --log-level-console=info --log-level-file=trace --no-start-stop --repo-path=[TEST_PATH]/backrest --repo-remote-path=[TEST_PATH]/backrest --stanza=db --start-fast
INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1]
ERROR: [145]: tablespace symlink ../invalid_tblspc must be absolute
INFO: backup stop
incr backup (invalid tablespace in $PGDATA)
> [BACKREST_BIN] --config=[TEST_PATH]/backrest/pg_backrest.conf --no-start-stop --log-level-console=info --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------
INFO: backup start: --cmd-remote=[BACKREST_BIN] --no-compress --config=[TEST_PATH]/backrest/pg_backrest.conf --config-remote=[TEST_PATH]/db/pg_backrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --hardlink --log-level-console=info --log-level-file=trace --no-start-stop --repo-path=[TEST_PATH]/backrest --repo-remote-path=[TEST_PATH]/backrest --stanza=db --start-fast
INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1]
ERROR: [146]: tablespace symlink [TEST_PATH]/db/common/invalid_tblspc must not be in \$PGDATA
INFO: backup stop
incr backup (add tablespace 1)
> [BACKREST_BIN] --config=[TEST_PATH]/backrest/pg_backrest.conf --no-start-stop --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------

View File

@ -656,6 +656,30 @@ DEBUG: Exit::exitSafe(): iExitCode = 126, strSignal = [undef]
INFO: backup stop
DEBUG: Common:::Lock::lockRelease(): bFailOnNoLock = false
incr backup (invalid path in pg_tblspc)
> [BACKREST_BIN] --config=[TEST_PATH]/backrest/pg_backrest.conf --no-start-stop --log-level-console=info --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------
INFO: backup start: --cmd-remote=[BACKREST_BIN] --config=[TEST_PATH]/backrest/pg_backrest.conf --config-remote=[TEST_PATH]/db/pg_backrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --log-level-console=info --log-level-file=trace --no-start-stop --repo-path=[TEST_PATH]/backrest --repo-remote-path=[TEST_PATH]/backrest --stanza=db --start-fast
INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1]
ERROR: [144]: /pg_tblspc/path is not a symlink - pg_tblspc should contain only symlinks
INFO: backup stop
incr backup (invalid relative link in pg_tblspc)
> [BACKREST_BIN] --config=[TEST_PATH]/backrest/pg_backrest.conf --no-start-stop --log-level-console=info --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------
INFO: backup start: --cmd-remote=[BACKREST_BIN] --config=[TEST_PATH]/backrest/pg_backrest.conf --config-remote=[TEST_PATH]/db/pg_backrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --log-level-console=info --log-level-file=trace --no-start-stop --repo-path=[TEST_PATH]/backrest --repo-remote-path=[TEST_PATH]/backrest --stanza=db --start-fast
INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1]
ERROR: [145]: tablespace symlink ../invalid_tblspc must be absolute
INFO: backup stop
incr backup (invalid tablespace in $PGDATA)
> [BACKREST_BIN] --config=[TEST_PATH]/backrest/pg_backrest.conf --no-start-stop --log-level-console=info --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------
INFO: backup start: --cmd-remote=[BACKREST_BIN] --config=[TEST_PATH]/backrest/pg_backrest.conf --config-remote=[TEST_PATH]/db/pg_backrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --log-level-console=info --log-level-file=trace --no-start-stop --repo-path=[TEST_PATH]/backrest --repo-remote-path=[TEST_PATH]/backrest --stanza=db --start-fast
INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1]
ERROR: [146]: tablespace symlink [TEST_PATH]/db/common/invalid_tblspc must not be in \$PGDATA
INFO: backup stop
incr backup (add tablespace 1)
> [BACKREST_BIN] --config=[TEST_PATH]/backrest/pg_backrest.conf --no-start-stop --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------

View File

@ -658,6 +658,30 @@ DEBUG: Exit::exitSafe(): iExitCode = 126, strSignal = [undef]
INFO: backup stop
DEBUG: Common:::Lock::lockRelease(): bFailOnNoLock = false
incr backup (invalid path in pg_tblspc)
> [BACKREST_BIN] --config=[TEST_PATH]/backrest/pg_backrest.conf --no-start-stop --log-level-console=info --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------
INFO: backup start: --cmd-remote=[BACKREST_BIN] --config=[TEST_PATH]/backrest/pg_backrest.conf --config-remote=[TEST_PATH]/db/pg_backrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --hardlink --log-level-console=info --log-level-file=trace --no-start-stop --repo-path=[TEST_PATH]/backrest --repo-remote-path=[TEST_PATH]/backrest --stanza=db --start-fast
INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1]
ERROR: [144]: /pg_tblspc/path is not a symlink - pg_tblspc should contain only symlinks
INFO: backup stop
incr backup (invalid relative link in pg_tblspc)
> [BACKREST_BIN] --config=[TEST_PATH]/backrest/pg_backrest.conf --no-start-stop --log-level-console=info --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------
INFO: backup start: --cmd-remote=[BACKREST_BIN] --config=[TEST_PATH]/backrest/pg_backrest.conf --config-remote=[TEST_PATH]/db/pg_backrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --hardlink --log-level-console=info --log-level-file=trace --no-start-stop --repo-path=[TEST_PATH]/backrest --repo-remote-path=[TEST_PATH]/backrest --stanza=db --start-fast
INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1]
ERROR: [145]: tablespace symlink ../invalid_tblspc must be absolute
INFO: backup stop
incr backup (invalid tablespace in $PGDATA)
> [BACKREST_BIN] --config=[TEST_PATH]/backrest/pg_backrest.conf --no-start-stop --log-level-console=info --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------
INFO: backup start: --cmd-remote=[BACKREST_BIN] --config=[TEST_PATH]/backrest/pg_backrest.conf --config-remote=[TEST_PATH]/db/pg_backrest.conf --db-host=127.0.0.1 --db-path=[TEST_PATH]/db/common --db-port=[PORT-1] --db-socket-path=[TEST_PATH]/db --db-user=vagrant --hardlink --log-level-console=info --log-level-file=trace --no-start-stop --repo-path=[TEST_PATH]/backrest --repo-remote-path=[TEST_PATH]/backrest --stanza=db --start-fast
INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1]
ERROR: [146]: tablespace symlink [TEST_PATH]/db/common/invalid_tblspc must not be in \$PGDATA
INFO: backup stop
incr backup (add tablespace 1)
> [BACKREST_BIN] --config=[TEST_PATH]/backrest/pg_backrest.conf --no-start-stop --stanza=db backup
------------------------------------------------------------------------------------------------------------------------------------