You've already forked pgbackrest
mirror of
https://github.com/pgbackrest/pgbackrest.git
synced 2025-09-16 09:06:18 +02:00
Added archive and backup WAL ranges to the info command.
This commit is contained in:
@@ -207,6 +207,10 @@
|
||||
<p>Improved <cmd>check</cmd> command to run on a standby, though only basic checks are done because <code>pg_switch_xlog()</code> cannot be executed on a replica.</p>
|
||||
</release-item>
|
||||
|
||||
<release-item>
|
||||
<p>Added archive and backup WAL ranges to the <cmd>info</cmd> command.</p>
|
||||
</release-item>
|
||||
|
||||
<release-item>
|
||||
<release-item-contributor-list>
|
||||
<release-item-contributor id="lobréau.benoit"/>
|
||||
|
@@ -528,9 +528,13 @@
|
||||
</execute>
|
||||
</execute-list>
|
||||
|
||||
<p>Each stanza has a separate section and it is possible to limit output to a single stanza with the <br-option>--stanza</br-option> option. The stanza '<id>status</id>' gives a brief indication of the stanza's health. If this is '<id>ok</id>' then <backrest/> is functioning normally. The '<id>wal archive min/max</id>' shows the minimum and maximum WAL currently stored in the archive. Note that there may be gaps due to archive retention policies or other reasons.</p>
|
||||
|
||||
<p>The backups are displayed oldest to newest. The oldest backup will <i>always</i> be a full backup (indicated by an <id>F</id> at the end of the label) but the newest backup can be full, differential (ends with <id>D</id>), or incremental (ends with <id>I</id>).</p>
|
||||
|
||||
<p>The '<id>start / stop timestamp</id>' defines the time period when the backup ran. The '<id>stop timestamp</id>' can be used to determine the backup to use when performing Point-In-Time Recovery. More information about Point-In-Time Recovery can be found in the <link section="/pitr">Point-In-Time Recovery</link> section.</p>
|
||||
<p>The '<id>timestamp start/stop</id>' defines the time period when the backup ran. The '<id>timestamp stop</id>' can be used to determine the backup to use when performing Point-In-Time Recovery. More information about Point-In-Time Recovery can be found in the <link section="/pitr">Point-In-Time Recovery</link> section.</p>
|
||||
|
||||
<p>The '<id>wal start/stop</id>' defines the WAL range that is required to make the database consistent when restoring. The <cmd>backup</cmd> command will ensure that this WAL range is in the archive before completing.</p>
|
||||
|
||||
<p>The '<id>database size</id>' is the full uncompressed size of the database while '<id>backup size</id>' is the amount of data actually backed up (these will be the same for full backups). The '<id>repository size</id>' includes all the files from this backup and any referenced backups that are required to restore the database while '<id>repository backup size</id>' includes only the files in this backup (these will also be the same for full backups). Repository sizes reflect compressed file sizes if compression is enabled in <backrest/> or the filesystem.</p>
|
||||
|
||||
@@ -1580,7 +1584,7 @@
|
||||
|
||||
<execute filter="n" output="y" user="backrest">
|
||||
<exe-cmd>{[project-exe]} info</exe-cmd>
|
||||
<exe-highlight>start / stop timestamp</exe-highlight>
|
||||
<exe-highlight>timestamp start/stop</exe-highlight>
|
||||
</execute>
|
||||
</execute-list>
|
||||
|
||||
|
@@ -35,6 +35,8 @@ use constant WAL_STATUS_OK => 'ok';
|
||||
|
||||
####################################################################################################################################
|
||||
# process
|
||||
#
|
||||
# Push a WAL segment. The WAL can be pushed in sync or async mode.
|
||||
####################################################################################################################################
|
||||
sub process
|
||||
{
|
||||
@@ -153,6 +155,8 @@ sub process
|
||||
|
||||
####################################################################################################################################
|
||||
# walStatus
|
||||
#
|
||||
# Read a WAL status file and return success or raise a warning or error.
|
||||
####################################################################################################################################
|
||||
sub walStatus
|
||||
{
|
||||
@@ -248,6 +252,9 @@ sub walStatus
|
||||
|
||||
####################################################################################################################################
|
||||
# readyList
|
||||
#
|
||||
# Determine which WAL PostgreSQL has marked as ready to be archived. This is the heart of the "look ahead" functionality in async
|
||||
# archiving.
|
||||
####################################################################################################################################
|
||||
sub readyList
|
||||
{
|
||||
@@ -309,7 +316,11 @@ sub readyList
|
||||
}
|
||||
|
||||
####################################################################################################################################
|
||||
# dropQueue
|
||||
# dropList
|
||||
#
|
||||
# Determine if the queue of WAL ready to be archived has grown larger the the user-configurable setting. If so, return the list of
|
||||
# WAL that should be dropped to allow PostgreSQL to continue running. For the moment this is the entire list of ready WAL,
|
||||
# otherwise the process may archive small spurts of WAL when at queue max which is not likely to be useful.
|
||||
####################################################################################################################################
|
||||
sub dropList
|
||||
{
|
||||
|
@@ -71,6 +71,8 @@ sub new
|
||||
|
||||
####################################################################################################################################
|
||||
# process
|
||||
#
|
||||
# Fork and run the async process if it is not already running.
|
||||
####################################################################################################################################
|
||||
sub process
|
||||
{
|
||||
@@ -96,7 +98,7 @@ sub process
|
||||
logDebugMisc($strOperation, 'async archive-push process is already running');
|
||||
}
|
||||
|
||||
# Run async process.
|
||||
# Run async process
|
||||
if (!$bClient)
|
||||
{
|
||||
# uncoverable branch false - reacquire the lock since it was released by the client process above
|
||||
@@ -138,6 +140,8 @@ sub process
|
||||
|
||||
####################################################################################################################################
|
||||
# initServer
|
||||
#
|
||||
# Create the spool directory and initialize the archive process.
|
||||
####################################################################################################################################
|
||||
sub initServer
|
||||
{
|
||||
@@ -149,7 +153,7 @@ sub initServer
|
||||
# Create the spool path
|
||||
filePathCreate($self->{strSpoolPath}, undef, true, true);
|
||||
|
||||
# Initialize the backup process
|
||||
# Initialize the archive process
|
||||
$self->{oArchiveProcess} = new pgBackRest::Protocol::LocalProcess(
|
||||
BACKUP, optionGet(OPTION_PROTOCOL_TIMEOUT) < 60 ? optionGet(OPTION_PROTOCOL_TIMEOUT) / 2 : 30,
|
||||
$self->{strBackRestBin}, false);
|
||||
@@ -161,6 +165,8 @@ sub initServer
|
||||
|
||||
####################################################################################################################################
|
||||
# processServer
|
||||
#
|
||||
# Setup the server and process the queue. This function is separate from processQueue() for testing purposes.
|
||||
####################################################################################################################################
|
||||
sub processServer
|
||||
{
|
||||
@@ -169,6 +175,8 @@ sub processServer
|
||||
# Assign function parameters, defaults, and log debug info
|
||||
my ($strOperation) = logDebugParam(__PACKAGE__ . '->processServer');
|
||||
|
||||
# There is no loop here because it seems wise to let the async process exit periodically. As the queue grows each async
|
||||
# execution will naturally run longer. This behavior is also far easier to test.
|
||||
$self->initServer();
|
||||
$self->processQueue();
|
||||
|
||||
@@ -178,6 +186,8 @@ sub processServer
|
||||
|
||||
####################################################################################################################################
|
||||
# processQueue
|
||||
#
|
||||
# Push WAL to the archive.
|
||||
####################################################################################################################################
|
||||
sub processQueue
|
||||
{
|
||||
@@ -293,6 +303,8 @@ sub processQueue
|
||||
|
||||
####################################################################################################################################
|
||||
# walStatusWrite
|
||||
#
|
||||
# Write out a status file to the spool path with information about the success or failure of an archive push.
|
||||
####################################################################################################################################
|
||||
sub walStatusWrite
|
||||
{
|
||||
|
@@ -18,6 +18,7 @@ use pgBackRest::BackupCommon;
|
||||
use pgBackRest::BackupInfo;
|
||||
use pgBackRest::Config::Config;
|
||||
use pgBackRest::File;
|
||||
use pgBackRest::FileCommon;
|
||||
use pgBackRest::Manifest;
|
||||
use pgBackRest::Protocol::Common;
|
||||
use pgBackRest::Protocol::Protocol;
|
||||
@@ -50,6 +51,8 @@ use constant INFO_KEY_DELTA => 'delta';
|
||||
use constant INFO_KEY_FORMAT => 'format';
|
||||
use constant INFO_KEY_ID => 'id';
|
||||
use constant INFO_KEY_LABEL => 'label';
|
||||
use constant INFO_KEY_MAX => 'max';
|
||||
use constant INFO_KEY_MIN => 'min';
|
||||
use constant INFO_KEY_MESSAGE => 'message';
|
||||
use constant INFO_KEY_PRIOR => 'prior';
|
||||
use constant INFO_KEY_REFERENCE => 'reference';
|
||||
@@ -108,52 +111,7 @@ sub process
|
||||
|
||||
if (optionTest(OPTION_OUTPUT, INFO_OUTPUT_TEXT))
|
||||
{
|
||||
my $strOutput;
|
||||
|
||||
foreach my $oStanzaInfo (@{$oyStanzaList})
|
||||
{
|
||||
# Add an LF between stanzas
|
||||
$strOutput .= defined($strOutput) ? "\n" : '';
|
||||
|
||||
# Output stanza name and status
|
||||
$strOutput .=
|
||||
'stanza: ' . $$oStanzaInfo{&INFO_STANZA_NAME} . "\n" .
|
||||
' status: ' . ($$oStanzaInfo{&INFO_SECTION_STATUS}{&INFO_KEY_CODE} == 0 ? INFO_STANZA_STATUS_OK :
|
||||
INFO_STANZA_STATUS_ERROR . ' (' . $$oStanzaInfo{&INFO_SECTION_STATUS}{&INFO_KEY_MESSAGE} . ')') . "\n";
|
||||
|
||||
# Output information for each stanza backup, from oldest to newest
|
||||
foreach my $oBackupInfo (@{$$oStanzaInfo{&INFO_BACKUP_SECTION_BACKUP}})
|
||||
{
|
||||
$strOutput .=
|
||||
"\n".
|
||||
' ' . $$oBackupInfo{&INFO_KEY_TYPE} . ' backup: ' . $$oBackupInfo{&INFO_KEY_LABEL} . "\n" .
|
||||
|
||||
' start / stop timestamp: ' .
|
||||
timestampFormat(undef, $$oBackupInfo{&INFO_SECTION_TIMESTAMP}{&INFO_KEY_START}) .
|
||||
' / ' .
|
||||
timestampFormat(undef, $$oBackupInfo{&INFO_SECTION_TIMESTAMP}{&INFO_KEY_STOP}) . "\n" .
|
||||
|
||||
' database size: ' .
|
||||
(defined($$oBackupInfo{&INFO_SECTION_INFO}{&INFO_KEY_SIZE}) ?
|
||||
fileSizeFormat($$oBackupInfo{&INFO_SECTION_INFO}{&INFO_KEY_SIZE}) : '') .
|
||||
', backup size: ' .
|
||||
(defined($$oBackupInfo{&INFO_SECTION_INFO}{&INFO_KEY_DELTA}) ?
|
||||
fileSizeFormat($$oBackupInfo{&INFO_SECTION_INFO}{&INFO_KEY_DELTA}) : '') . "\n" .
|
||||
|
||||
' repository size: ' .
|
||||
(defined($$oBackupInfo{&INFO_SECTION_INFO}{&INFO_SECTION_REPO}{&INFO_KEY_SIZE}) ?
|
||||
fileSizeFormat($$oBackupInfo{&INFO_SECTION_INFO}{&INFO_SECTION_REPO}{&INFO_KEY_SIZE}) : '') .
|
||||
', repository backup size: ' .
|
||||
(defined($$oBackupInfo{&INFO_SECTION_INFO}{&INFO_SECTION_REPO}{&INFO_KEY_DELTA}) ?
|
||||
fileSizeFormat($$oBackupInfo{&INFO_SECTION_INFO}{&INFO_SECTION_REPO}{&INFO_KEY_DELTA}) : '') . "\n";
|
||||
|
||||
# List the backup reference chain, if any, for this backup
|
||||
if (defined($$oBackupInfo{&INFO_KEY_REFERENCE}))
|
||||
{
|
||||
$strOutput .= ' backup reference list: ' . (join(', ', @{$$oBackupInfo{&INFO_KEY_REFERENCE}})) . "\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
my $strOutput = $self->formatText($oyStanzaList);
|
||||
|
||||
if (defined($strOutput))
|
||||
{
|
||||
@@ -191,6 +149,170 @@ sub process
|
||||
);
|
||||
}
|
||||
|
||||
####################################################################################################################################
|
||||
# formatText
|
||||
#
|
||||
# Format --output=text info.
|
||||
####################################################################################################################################
|
||||
sub formatText
|
||||
{
|
||||
my $self = shift;
|
||||
|
||||
# Assign function parameters, defaults, and log debug info
|
||||
my
|
||||
(
|
||||
$strOperation,
|
||||
$oyStanzaList,
|
||||
) =
|
||||
logDebugParam
|
||||
(
|
||||
__PACKAGE__ . '->formatText', \@_,
|
||||
{name => 'oyStanzaList', trace => true},
|
||||
);
|
||||
|
||||
my $strOutput;
|
||||
|
||||
foreach my $oStanzaInfo (@{$oyStanzaList})
|
||||
{
|
||||
# Output stanza name and status
|
||||
$strOutput .= (defined($strOutput) ? "\n" : '') . $self->formatTextStanza($oStanzaInfo) . "\n";
|
||||
|
||||
# Output information for each stanza backup, from oldest to newest
|
||||
foreach my $oBackupInfo (@{$$oStanzaInfo{&INFO_BACKUP_SECTION_BACKUP}})
|
||||
{
|
||||
$strOutput .= "\n" . $self->formatTextBackup($oBackupInfo) . "\n";
|
||||
}
|
||||
}
|
||||
|
||||
# Return from function and log return values if any
|
||||
return logDebugReturn
|
||||
(
|
||||
$strOperation,
|
||||
{name => 'strOutput', value => $strOutput, trace => true}
|
||||
);
|
||||
}
|
||||
|
||||
####################################################################################################################################
|
||||
# formatTextStanza
|
||||
#
|
||||
# Format --output=text stanza info.
|
||||
####################################################################################################################################
|
||||
sub formatTextStanza
|
||||
{
|
||||
my $self = shift;
|
||||
|
||||
# Assign function parameters, defaults, and log debug info
|
||||
my
|
||||
(
|
||||
$strOperation,
|
||||
$oStanzaInfo,
|
||||
) =
|
||||
logDebugParam
|
||||
(
|
||||
__PACKAGE__ . '->formatTextStanza', \@_,
|
||||
{name => 'oStanzaInfo', trace => true},
|
||||
);
|
||||
|
||||
# Output stanza name and status
|
||||
my $strOutput =
|
||||
'stanza: ' . $oStanzaInfo->{&INFO_STANZA_NAME} . "\n" .
|
||||
" status: " . ($oStanzaInfo->{&INFO_SECTION_STATUS}{&INFO_KEY_CODE} == 0 ? INFO_STANZA_STATUS_OK :
|
||||
INFO_STANZA_STATUS_ERROR . ' (' . $oStanzaInfo->{&INFO_SECTION_STATUS}{&INFO_KEY_MESSAGE} . ')');
|
||||
|
||||
# Output archive start / stop values
|
||||
$strOutput .=
|
||||
"\n wal archive min/max: ";
|
||||
|
||||
if (defined($oStanzaInfo->{&INFO_SECTION_ARCHIVE}{&INFO_KEY_MIN}) &&
|
||||
defined($oStanzaInfo->{&INFO_SECTION_ARCHIVE}{&INFO_KEY_MAX}))
|
||||
{
|
||||
$strOutput .=
|
||||
$oStanzaInfo->{&INFO_SECTION_ARCHIVE}{&INFO_KEY_MIN} . ' / ' . $oStanzaInfo->{&INFO_SECTION_ARCHIVE}{&INFO_KEY_MAX};
|
||||
}
|
||||
else
|
||||
{
|
||||
$strOutput .= 'none present';
|
||||
}
|
||||
|
||||
# Return from function and log return values if any
|
||||
return logDebugReturn
|
||||
(
|
||||
$strOperation,
|
||||
{name => 'strOutput', value => $strOutput, trace => true}
|
||||
);
|
||||
}
|
||||
|
||||
####################################################################################################################################
|
||||
# formatTextBackup
|
||||
#
|
||||
# Format --output=text backup info.
|
||||
####################################################################################################################################
|
||||
sub formatTextBackup
|
||||
{
|
||||
my $self = shift;
|
||||
|
||||
# Assign function parameters, defaults, and log debug info
|
||||
my
|
||||
(
|
||||
$strOperation,
|
||||
$oBackupInfo,
|
||||
) =
|
||||
logDebugParam
|
||||
(
|
||||
__PACKAGE__ . '->formatTextBackup', \@_,
|
||||
{name => 'oBackupInfo', trace => true},
|
||||
);
|
||||
|
||||
my $strOutput .=
|
||||
' ' . $$oBackupInfo{&INFO_KEY_TYPE} . ' backup: ' . $$oBackupInfo{&INFO_KEY_LABEL} . "\n" .
|
||||
|
||||
' timestamp start/stop: ' .
|
||||
timestampFormat(undef, $$oBackupInfo{&INFO_SECTION_TIMESTAMP}{&INFO_KEY_START}) .
|
||||
' / ' .
|
||||
timestampFormat(undef, $$oBackupInfo{&INFO_SECTION_TIMESTAMP}{&INFO_KEY_STOP}) . "\n" .
|
||||
|
||||
" wal start/stop: ";
|
||||
|
||||
if (defined($oBackupInfo->{&INFO_SECTION_ARCHIVE}{&INFO_KEY_START}) &&
|
||||
defined($oBackupInfo->{&INFO_SECTION_ARCHIVE}{&INFO_KEY_STOP}))
|
||||
{
|
||||
$strOutput .=
|
||||
$oBackupInfo->{&INFO_SECTION_ARCHIVE}{&INFO_KEY_START} . ' / ' . $oBackupInfo->{&INFO_SECTION_ARCHIVE}{&INFO_KEY_STOP};
|
||||
}
|
||||
else
|
||||
{
|
||||
$strOutput .= 'n/a';
|
||||
}
|
||||
|
||||
$strOutput .=
|
||||
"\n database size: " .
|
||||
(defined($$oBackupInfo{&INFO_SECTION_INFO}{&INFO_KEY_SIZE}) ?
|
||||
fileSizeFormat($$oBackupInfo{&INFO_SECTION_INFO}{&INFO_KEY_SIZE}) : '') .
|
||||
', backup size: ' .
|
||||
(defined($$oBackupInfo{&INFO_SECTION_INFO}{&INFO_KEY_DELTA}) ?
|
||||
fileSizeFormat($$oBackupInfo{&INFO_SECTION_INFO}{&INFO_KEY_DELTA}) : '') . "\n" .
|
||||
|
||||
' repository size: ' .
|
||||
(defined($$oBackupInfo{&INFO_SECTION_INFO}{&INFO_SECTION_REPO}{&INFO_KEY_SIZE}) ?
|
||||
fileSizeFormat($$oBackupInfo{&INFO_SECTION_INFO}{&INFO_SECTION_REPO}{&INFO_KEY_SIZE}) : '') .
|
||||
', repository backup size: ' .
|
||||
(defined($$oBackupInfo{&INFO_SECTION_INFO}{&INFO_SECTION_REPO}{&INFO_KEY_DELTA}) ?
|
||||
fileSizeFormat($$oBackupInfo{&INFO_SECTION_INFO}{&INFO_SECTION_REPO}{&INFO_KEY_DELTA}) : '');
|
||||
|
||||
# List the backup reference chain, if any, for this backup
|
||||
if (defined($oBackupInfo->{&INFO_KEY_REFERENCE}) && @{$oBackupInfo->{&INFO_KEY_REFERENCE}} > 0)
|
||||
{
|
||||
$strOutput .= "\n backup reference list: " . (join(', ', @{$$oBackupInfo{&INFO_KEY_REFERENCE}}));
|
||||
}
|
||||
|
||||
# Return from function and log return values if any
|
||||
return logDebugReturn
|
||||
(
|
||||
$strOperation,
|
||||
{name => 'strOutput', value => $strOutput, trace => true}
|
||||
);
|
||||
}
|
||||
|
||||
####################################################################################################################################
|
||||
# stanzaList
|
||||
####################################################################################################################################
|
||||
@@ -236,6 +358,7 @@ sub stanzaList
|
||||
($$oStanzaInfo{&INFO_BACKUP_SECTION_BACKUP}, $$oStanzaInfo{&INFO_BACKUP_SECTION_DB}) =
|
||||
$self->backupList($oFile, $strStanzaFound);
|
||||
|
||||
# If there are no backups then set status to no backup
|
||||
if (@{$$oStanzaInfo{&INFO_BACKUP_SECTION_BACKUP}} == 0)
|
||||
{
|
||||
$$oStanzaInfo{&INFO_SECTION_STATUS} =
|
||||
@@ -244,6 +367,7 @@ sub stanzaList
|
||||
&INFO_KEY_MESSAGE => INFO_STANZA_STATUS_NO_BACKUP_MESSAGE
|
||||
};
|
||||
}
|
||||
# Else status is OK
|
||||
else
|
||||
{
|
||||
$$oStanzaInfo{&INFO_SECTION_STATUS} =
|
||||
@@ -253,6 +377,43 @@ sub stanzaList
|
||||
};
|
||||
}
|
||||
|
||||
# Get the first/last WAL
|
||||
my $strArchiveStart;
|
||||
my $strArchiveStop;
|
||||
my $hDbInfo = @{$oStanzaInfo->{&INFO_BACKUP_SECTION_DB}}[0];
|
||||
|
||||
if (defined($hDbInfo->{&INFO_KEY_ID}) && defined($hDbInfo->{&INFO_KEY_VERSION}))
|
||||
{
|
||||
my $strArchivePath = "archive/${strStanzaFound}/" . $hDbInfo->{&INFO_KEY_VERSION} . '-' . $hDbInfo->{&INFO_KEY_ID};
|
||||
|
||||
if ($oFile->exists(PATH_BACKUP, $strArchivePath))
|
||||
{
|
||||
my $hWalManifest = $oFile->manifest(PATH_BACKUP, $strArchivePath);
|
||||
|
||||
foreach my $strWalFile (sort(keys(%{$hWalManifest})))
|
||||
{
|
||||
if ($strWalFile eq '.' || $strWalFile eq '..' ||
|
||||
$strWalFile !~ ("^[0-F]{16}\/[0-F]{24}-[0-f]{40}(\\." . COMPRESS_EXT . "){0,1}\$"))
|
||||
{
|
||||
next;
|
||||
}
|
||||
|
||||
if (!defined($strArchiveStart))
|
||||
{
|
||||
$strArchiveStart = substr((split('/', $strWalFile))[1], 0, 24);
|
||||
}
|
||||
|
||||
$strArchiveStop = substr((split('/', $strWalFile))[1], 0, 24);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$oStanzaInfo->{&INFO_SECTION_ARCHIVE} =
|
||||
{
|
||||
&INFO_KEY_MIN => $strArchiveStart,
|
||||
&INFO_KEY_MAX => $strArchiveStop,
|
||||
};
|
||||
|
||||
push @oyStanzaList, $oStanzaInfo;
|
||||
}
|
||||
|
||||
|
@@ -3356,50 +3356,59 @@ info db stanza - normal output (db-master host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
stanza: db
|
||||
status: ok
|
||||
wal archive min/max: none present
|
||||
|
||||
full backup: [BACKUP-FULL-2]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 128KB
|
||||
repository size: 128KB, repository backup size: 128KB
|
||||
|
||||
diff backup: [BACKUP-DIFF-2]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 25B
|
||||
repository size: 128KB, repository backup size: 25B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 13B
|
||||
repository size: 128KB, repository backup size: 13B
|
||||
backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-4]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 8B
|
||||
repository size: 112KB, repository backup size: 8B
|
||||
backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-2], [BACKUP-INCR-3]
|
||||
|
||||
diff backup: [BACKUP-DIFF-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 39B
|
||||
repository size: 112KB, repository backup size: 39B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-5]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 0B
|
||||
repository size: 112KB, repository backup size: 0B
|
||||
backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-3]
|
||||
|
||||
diff backup: [BACKUP-DIFF-4]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 30B
|
||||
repository size: 112KB, repository backup size: 30B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
full backup: [BACKUP-FULL-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 112KB
|
||||
repository size: 112KB, repository backup size: 112KB
|
||||
|
||||
@@ -3408,6 +3417,10 @@ info db stanza - normal output (db-master host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
[
|
||||
{
|
||||
"archive" : {
|
||||
"max" : null,
|
||||
"min" : null
|
||||
},
|
||||
"backup" : [
|
||||
{
|
||||
"archive" : {
|
||||
@@ -3968,26 +3981,34 @@ info all stanzas - normal output (db-master host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
stanza: db
|
||||
status: ok
|
||||
wal archive min/max: none present
|
||||
|
||||
full backup: [BACKUP-FULL-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 112KB
|
||||
repository size: 112KB, repository backup size: 112KB
|
||||
|
||||
diff backup: [BACKUP-DIFF-5]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 9B
|
||||
repository size: 112KB, repository backup size: 9B
|
||||
backup reference list: [BACKUP-FULL-3]
|
||||
|
||||
stanza: db_empty
|
||||
status: error (no valid backups)
|
||||
wal archive min/max: none present
|
||||
|
||||
info all stanzas - normal output (db-master host)
|
||||
> [CONTAINER-EXEC] db-master [BACKREST-BIN] --config=[TEST_PATH]/db-master/pgbackrest.conf --log-level-console=warn --output=json info
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
[
|
||||
{
|
||||
"archive" : {
|
||||
"max" : null,
|
||||
"min" : null
|
||||
},
|
||||
"backup" : [
|
||||
{
|
||||
"archive" : {
|
||||
@@ -4064,6 +4085,10 @@ info all stanzas - normal output (db-master host)
|
||||
}
|
||||
},
|
||||
{
|
||||
"archive" : {
|
||||
"max" : null,
|
||||
"min" : null
|
||||
},
|
||||
"backup" : [],
|
||||
"db" : [],
|
||||
"name" : "db_empty",
|
||||
@@ -4079,6 +4104,7 @@ info bogus stanza - bogus stanza (db-master host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
stanza: bogus
|
||||
status: error (missing stanza path)
|
||||
wal archive min/max: none present
|
||||
|
||||
info bogus stanza - bogus stanza (db-master host)
|
||||
> [CONTAINER-EXEC] db-master [BACKREST-BIN] --config=[TEST_PATH]/db-master/pgbackrest.conf --log-level-console=warn --stanza=bogus --output=json info
|
||||
|
@@ -2943,50 +2943,59 @@ info db stanza - normal output (db-master host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
stanza: db
|
||||
status: ok
|
||||
wal archive min/max: none present
|
||||
|
||||
full backup: [BACKUP-FULL-2]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 128KB
|
||||
repository size: 128KB, repository backup size: 128KB
|
||||
|
||||
diff backup: [BACKUP-DIFF-2]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 25B
|
||||
repository size: 128KB, repository backup size: 25B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 13B
|
||||
repository size: 128KB, repository backup size: 13B
|
||||
backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-4]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 8B
|
||||
repository size: 112KB, repository backup size: 8B
|
||||
backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-2], [BACKUP-INCR-3]
|
||||
|
||||
diff backup: [BACKUP-DIFF-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 39B
|
||||
repository size: 112KB, repository backup size: 39B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-5]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 0B
|
||||
repository size: 112KB, repository backup size: 0B
|
||||
backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-3]
|
||||
|
||||
diff backup: [BACKUP-DIFF-4]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 30B
|
||||
repository size: 112KB, repository backup size: 30B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
full backup: [BACKUP-FULL-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 112KB
|
||||
repository size: 112KB, repository backup size: 112KB
|
||||
|
||||
@@ -2995,6 +3004,10 @@ info db stanza - normal output (db-master host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
[
|
||||
{
|
||||
"archive" : {
|
||||
"max" : null,
|
||||
"min" : null
|
||||
},
|
||||
"backup" : [
|
||||
{
|
||||
"archive" : {
|
||||
@@ -3549,26 +3562,34 @@ info all stanzas - normal output (db-master host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
stanza: db
|
||||
status: ok
|
||||
wal archive min/max: none present
|
||||
|
||||
full backup: [BACKUP-FULL-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 112KB
|
||||
repository size: 112KB, repository backup size: 112KB
|
||||
|
||||
diff backup: [BACKUP-DIFF-5]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 9B
|
||||
repository size: 112KB, repository backup size: 9B
|
||||
backup reference list: [BACKUP-FULL-3]
|
||||
|
||||
stanza: db_empty
|
||||
status: error (no valid backups)
|
||||
wal archive min/max: none present
|
||||
|
||||
info all stanzas - normal output (db-master host)
|
||||
> [CONTAINER-EXEC] db-master [BACKREST-BIN] --config=[TEST_PATH]/db-master/pgbackrest.conf --log-level-console=warn --output=json info
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
[
|
||||
{
|
||||
"archive" : {
|
||||
"max" : null,
|
||||
"min" : null
|
||||
},
|
||||
"backup" : [
|
||||
{
|
||||
"archive" : {
|
||||
@@ -3645,6 +3666,10 @@ info all stanzas - normal output (db-master host)
|
||||
}
|
||||
},
|
||||
{
|
||||
"archive" : {
|
||||
"max" : null,
|
||||
"min" : null
|
||||
},
|
||||
"backup" : [],
|
||||
"db" : [],
|
||||
"name" : "db_empty",
|
||||
@@ -3660,6 +3685,7 @@ info bogus stanza - bogus stanza (db-master host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
stanza: bogus
|
||||
status: error (missing stanza path)
|
||||
wal archive min/max: none present
|
||||
|
||||
info bogus stanza - bogus stanza (db-master host)
|
||||
> [CONTAINER-EXEC] db-master [BACKREST-BIN] --config=[TEST_PATH]/db-master/pgbackrest.conf --log-level-console=warn --stanza=bogus --output=json info
|
||||
|
@@ -2837,50 +2837,59 @@ info db stanza - normal output (db-master host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
stanza: db
|
||||
status: ok
|
||||
wal archive min/max: none present
|
||||
|
||||
full backup: [BACKUP-FULL-2]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 128KB
|
||||
repository size: 1.2KB, repository backup size: 1.2KB
|
||||
|
||||
diff backup: [BACKUP-DIFF-2]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 25B
|
||||
repository size: 1.3KB, repository backup size: 85B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 13B
|
||||
repository size: 1.4KB, repository backup size: 53B
|
||||
backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-4]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 8B
|
||||
repository size: 1.2KB, 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]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 39B
|
||||
repository size: 1.2KB, repository backup size: 139B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-5]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 0B
|
||||
repository size: 1.2KB, repository backup size: 0B
|
||||
backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-3]
|
||||
|
||||
diff backup: [BACKUP-DIFF-4]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 30B
|
||||
repository size: 1.1KB, repository backup size: 90B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
full backup: [BACKUP-FULL-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 112KB
|
||||
repository size: 1.2KB, repository backup size: 1.2KB
|
||||
|
||||
@@ -2889,6 +2898,10 @@ info db stanza - normal output (db-master host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
[
|
||||
{
|
||||
"archive" : {
|
||||
"max" : null,
|
||||
"min" : null
|
||||
},
|
||||
"backup" : [
|
||||
{
|
||||
"archive" : {
|
||||
@@ -3441,26 +3454,34 @@ info all stanzas - normal output (db-master host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
stanza: db
|
||||
status: ok
|
||||
wal archive min/max: none present
|
||||
|
||||
full backup: [BACKUP-FULL-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 112KB
|
||||
repository size: 1.2KB, repository backup size: 1.2KB
|
||||
|
||||
diff backup: [BACKUP-DIFF-5]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 9B
|
||||
repository size: 1.2KB, repository backup size: 29B
|
||||
backup reference list: [BACKUP-FULL-3]
|
||||
|
||||
stanza: db_empty
|
||||
status: error (no valid backups)
|
||||
wal archive min/max: none present
|
||||
|
||||
info all stanzas - normal output (db-master host)
|
||||
> [CONTAINER-EXEC] db-master [BACKREST-BIN] --config=[TEST_PATH]/db-master/pgbackrest.conf --log-level-console=warn --output=json info
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
[
|
||||
{
|
||||
"archive" : {
|
||||
"max" : null,
|
||||
"min" : null
|
||||
},
|
||||
"backup" : [
|
||||
{
|
||||
"archive" : {
|
||||
@@ -3537,6 +3558,10 @@ info all stanzas - normal output (db-master host)
|
||||
}
|
||||
},
|
||||
{
|
||||
"archive" : {
|
||||
"max" : null,
|
||||
"min" : null
|
||||
},
|
||||
"backup" : [],
|
||||
"db" : [],
|
||||
"name" : "db_empty",
|
||||
@@ -3552,6 +3577,7 @@ info bogus stanza - bogus stanza (db-master host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
stanza: bogus
|
||||
status: error (missing stanza path)
|
||||
wal archive min/max: none present
|
||||
|
||||
info bogus stanza - bogus stanza (db-master host)
|
||||
> [CONTAINER-EXEC] db-master [BACKREST-BIN] --config=[TEST_PATH]/db-master/pgbackrest.conf --log-level-console=warn --stanza=bogus --output=json info
|
||||
|
@@ -2931,50 +2931,59 @@ info db stanza - normal output (db-master host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
stanza: db
|
||||
status: ok
|
||||
wal archive min/max: none present
|
||||
|
||||
full backup: [BACKUP-FULL-2]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 128KB
|
||||
repository size: 1.2KB, repository backup size: 1.2KB
|
||||
|
||||
diff backup: [BACKUP-DIFF-2]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 25B
|
||||
repository size: 1.3KB, repository backup size: 85B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 13B
|
||||
repository size: 1.4KB, repository backup size: 53B
|
||||
backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-4]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 8B
|
||||
repository size: 1.2KB, 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]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 39B
|
||||
repository size: 1.2KB, repository backup size: 139B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-5]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 0B
|
||||
repository size: 1.2KB, repository backup size: 0B
|
||||
backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-3]
|
||||
|
||||
diff backup: [BACKUP-DIFF-4]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 30B
|
||||
repository size: 1.1KB, repository backup size: 90B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
full backup: [BACKUP-FULL-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 112KB
|
||||
repository size: 1.2KB, repository backup size: 1.2KB
|
||||
|
||||
@@ -2983,6 +2992,10 @@ info db stanza - normal output (db-master host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
[
|
||||
{
|
||||
"archive" : {
|
||||
"max" : null,
|
||||
"min" : null
|
||||
},
|
||||
"backup" : [
|
||||
{
|
||||
"archive" : {
|
||||
@@ -3536,26 +3549,34 @@ info all stanzas - normal output (db-master host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
stanza: db
|
||||
status: ok
|
||||
wal archive min/max: none present
|
||||
|
||||
full backup: [BACKUP-FULL-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 112KB
|
||||
repository size: 1.2KB, repository backup size: 1.2KB
|
||||
|
||||
diff backup: [BACKUP-DIFF-5]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 9B
|
||||
repository size: 1.2KB, repository backup size: 29B
|
||||
backup reference list: [BACKUP-FULL-3]
|
||||
|
||||
stanza: db_empty
|
||||
status: error (no valid backups)
|
||||
wal archive min/max: none present
|
||||
|
||||
info all stanzas - normal output (db-master host)
|
||||
> [CONTAINER-EXEC] db-master [BACKREST-BIN] --config=[TEST_PATH]/db-master/pgbackrest.conf --log-level-console=warn --output=json info
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
[
|
||||
{
|
||||
"archive" : {
|
||||
"max" : null,
|
||||
"min" : null
|
||||
},
|
||||
"backup" : [
|
||||
{
|
||||
"archive" : {
|
||||
@@ -3632,6 +3653,10 @@ info all stanzas - normal output (db-master host)
|
||||
}
|
||||
},
|
||||
{
|
||||
"archive" : {
|
||||
"max" : null,
|
||||
"min" : null
|
||||
},
|
||||
"backup" : [],
|
||||
"db" : [],
|
||||
"name" : "db_empty",
|
||||
@@ -3647,6 +3672,7 @@ info bogus stanza - bogus stanza (db-master host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
stanza: bogus
|
||||
status: error (missing stanza path)
|
||||
wal archive min/max: none present
|
||||
|
||||
info bogus stanza - bogus stanza (db-master host)
|
||||
> [CONTAINER-EXEC] db-master [BACKREST-BIN] --config=[TEST_PATH]/db-master/pgbackrest.conf --log-level-console=warn --stanza=bogus --output=json info
|
||||
|
@@ -3537,50 +3537,59 @@ info db stanza - normal output (db-master host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
stanza: db
|
||||
status: ok
|
||||
wal archive min/max: none present
|
||||
|
||||
full backup: [BACKUP-FULL-2]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 128KB
|
||||
repository size: 128KB, repository backup size: 128KB
|
||||
|
||||
diff backup: [BACKUP-DIFF-2]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 25B
|
||||
repository size: 128KB, repository backup size: 25B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 13B
|
||||
repository size: 128KB, repository backup size: 13B
|
||||
backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-4]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 8B
|
||||
repository size: 112KB, repository backup size: 8B
|
||||
backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-2], [BACKUP-INCR-3]
|
||||
|
||||
diff backup: [BACKUP-DIFF-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 39B
|
||||
repository size: 112KB, repository backup size: 39B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-5]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 0B
|
||||
repository size: 112KB, repository backup size: 0B
|
||||
backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-3]
|
||||
|
||||
diff backup: [BACKUP-DIFF-4]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 30B
|
||||
repository size: 112KB, repository backup size: 30B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
full backup: [BACKUP-FULL-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 112KB
|
||||
repository size: 112KB, repository backup size: 112KB
|
||||
|
||||
@@ -3589,6 +3598,10 @@ info db stanza - normal output (backup host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
[
|
||||
{
|
||||
"archive" : {
|
||||
"max" : null,
|
||||
"min" : null
|
||||
},
|
||||
"backup" : [
|
||||
{
|
||||
"archive" : {
|
||||
@@ -4164,26 +4177,34 @@ info all stanzas - normal output (backup host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
stanza: db
|
||||
status: ok
|
||||
wal archive min/max: none present
|
||||
|
||||
full backup: [BACKUP-FULL-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 112KB
|
||||
repository size: 112KB, repository backup size: 112KB
|
||||
|
||||
diff backup: [BACKUP-DIFF-5]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 9B
|
||||
repository size: 112KB, repository backup size: 9B
|
||||
backup reference list: [BACKUP-FULL-3]
|
||||
|
||||
stanza: db_empty
|
||||
status: error (no valid backups)
|
||||
wal archive min/max: none present
|
||||
|
||||
info all stanzas - normal output (db-master host)
|
||||
> [CONTAINER-EXEC] db-master [BACKREST-BIN] --config=[TEST_PATH]/db-master/pgbackrest.conf --log-level-console=warn --output=json info
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
[
|
||||
{
|
||||
"archive" : {
|
||||
"max" : null,
|
||||
"min" : null
|
||||
},
|
||||
"backup" : [
|
||||
{
|
||||
"archive" : {
|
||||
@@ -4260,6 +4281,10 @@ info all stanzas - normal output (db-master host)
|
||||
}
|
||||
},
|
||||
{
|
||||
"archive" : {
|
||||
"max" : null,
|
||||
"min" : null
|
||||
},
|
||||
"backup" : [],
|
||||
"db" : [],
|
||||
"name" : "db_empty",
|
||||
@@ -4275,6 +4300,7 @@ info bogus stanza - bogus stanza (backup host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
stanza: bogus
|
||||
status: error (missing stanza path)
|
||||
wal archive min/max: none present
|
||||
|
||||
info bogus stanza - bogus stanza (db-master host)
|
||||
> [CONTAINER-EXEC] db-master [BACKREST-BIN] --config=[TEST_PATH]/db-master/pgbackrest.conf --log-level-console=warn --stanza=bogus --output=json info
|
||||
|
@@ -3227,50 +3227,59 @@ info db stanza - normal output (db-master host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
stanza: db
|
||||
status: ok
|
||||
wal archive min/max: none present
|
||||
|
||||
full backup: [BACKUP-FULL-2]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 128KB
|
||||
repository size: 128KB, repository backup size: 128KB
|
||||
|
||||
diff backup: [BACKUP-DIFF-2]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 25B
|
||||
repository size: 128KB, repository backup size: 25B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 13B
|
||||
repository size: 128KB, repository backup size: 13B
|
||||
backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-4]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 8B
|
||||
repository size: 112KB, repository backup size: 8B
|
||||
backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-2], [BACKUP-INCR-3]
|
||||
|
||||
diff backup: [BACKUP-DIFF-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 39B
|
||||
repository size: 112KB, repository backup size: 39B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-5]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 0B
|
||||
repository size: 112KB, repository backup size: 0B
|
||||
backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-3]
|
||||
|
||||
diff backup: [BACKUP-DIFF-4]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 30B
|
||||
repository size: 112KB, repository backup size: 30B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
full backup: [BACKUP-FULL-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 112KB
|
||||
repository size: 112KB, repository backup size: 112KB
|
||||
|
||||
@@ -3279,6 +3288,10 @@ info db stanza - normal output (backup host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
[
|
||||
{
|
||||
"archive" : {
|
||||
"max" : null,
|
||||
"min" : null
|
||||
},
|
||||
"backup" : [
|
||||
{
|
||||
"archive" : {
|
||||
@@ -3855,26 +3868,34 @@ info all stanzas - normal output (backup host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
stanza: db
|
||||
status: ok
|
||||
wal archive min/max: none present
|
||||
|
||||
full backup: [BACKUP-FULL-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 112KB
|
||||
repository size: 112KB, repository backup size: 112KB
|
||||
|
||||
diff backup: [BACKUP-DIFF-5]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 9B
|
||||
repository size: 112KB, repository backup size: 9B
|
||||
backup reference list: [BACKUP-FULL-3]
|
||||
|
||||
stanza: db_empty
|
||||
status: error (no valid backups)
|
||||
wal archive min/max: none present
|
||||
|
||||
info all stanzas - normal output (db-master host)
|
||||
> [CONTAINER-EXEC] db-master [BACKREST-BIN] --config=[TEST_PATH]/db-master/pgbackrest.conf --log-level-console=warn --output=json info
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
[
|
||||
{
|
||||
"archive" : {
|
||||
"max" : null,
|
||||
"min" : null
|
||||
},
|
||||
"backup" : [
|
||||
{
|
||||
"archive" : {
|
||||
@@ -3951,6 +3972,10 @@ info all stanzas - normal output (db-master host)
|
||||
}
|
||||
},
|
||||
{
|
||||
"archive" : {
|
||||
"max" : null,
|
||||
"min" : null
|
||||
},
|
||||
"backup" : [],
|
||||
"db" : [],
|
||||
"name" : "db_empty",
|
||||
@@ -3966,6 +3991,7 @@ info bogus stanza - bogus stanza (backup host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
stanza: bogus
|
||||
status: error (missing stanza path)
|
||||
wal archive min/max: none present
|
||||
|
||||
info bogus stanza - bogus stanza (db-master host)
|
||||
> [CONTAINER-EXEC] db-master [BACKREST-BIN] --config=[TEST_PATH]/db-master/pgbackrest.conf --log-level-console=warn --stanza=bogus --output=json info
|
||||
|
@@ -3109,50 +3109,59 @@ info db stanza - normal output (db-master host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
stanza: db
|
||||
status: ok
|
||||
wal archive min/max: none present
|
||||
|
||||
full backup: [BACKUP-FULL-2]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 128KB
|
||||
repository size: 1.2KB, repository backup size: 1.2KB
|
||||
|
||||
diff backup: [BACKUP-DIFF-2]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 25B
|
||||
repository size: 1.3KB, repository backup size: 85B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 13B
|
||||
repository size: 1.4KB, repository backup size: 53B
|
||||
backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-4]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 8B
|
||||
repository size: 1.2KB, 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]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 39B
|
||||
repository size: 1.2KB, repository backup size: 139B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-5]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 0B
|
||||
repository size: 1.2KB, repository backup size: 0B
|
||||
backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-3]
|
||||
|
||||
diff backup: [BACKUP-DIFF-4]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 30B
|
||||
repository size: 1.1KB, repository backup size: 90B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
full backup: [BACKUP-FULL-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 112KB
|
||||
repository size: 1.2KB, repository backup size: 1.2KB
|
||||
|
||||
@@ -3161,6 +3170,10 @@ info db stanza - normal output (backup host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
[
|
||||
{
|
||||
"archive" : {
|
||||
"max" : null,
|
||||
"min" : null
|
||||
},
|
||||
"backup" : [
|
||||
{
|
||||
"archive" : {
|
||||
@@ -3734,67 +3747,82 @@ info all stanzas - normal output (backup host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
stanza: db
|
||||
status: ok
|
||||
wal archive min/max: none present
|
||||
|
||||
full backup: [BACKUP-FULL-2]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 128KB
|
||||
repository size: 1.2KB, repository backup size: 1.2KB
|
||||
|
||||
diff backup: [BACKUP-DIFF-2]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 25B
|
||||
repository size: 1.3KB, repository backup size: 85B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 13B
|
||||
repository size: 1.4KB, repository backup size: 53B
|
||||
backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-4]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 8B
|
||||
repository size: 1.2KB, 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]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 39B
|
||||
repository size: 1.2KB, repository backup size: 139B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-5]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 0B
|
||||
repository size: 1.2KB, repository backup size: 0B
|
||||
backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-3]
|
||||
|
||||
diff backup: [BACKUP-DIFF-4]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 30B
|
||||
repository size: 1.1KB, repository backup size: 90B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
full backup: [BACKUP-FULL-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 112KB
|
||||
repository size: 1.2KB, repository backup size: 1.2KB
|
||||
|
||||
diff backup: [BACKUP-DIFF-5]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 9B
|
||||
repository size: 1.2KB, repository backup size: 29B
|
||||
backup reference list: [BACKUP-FULL-3]
|
||||
|
||||
stanza: db_empty
|
||||
status: error (no valid backups)
|
||||
wal archive min/max: none present
|
||||
|
||||
info all stanzas - normal output (db-master host)
|
||||
> [CONTAINER-EXEC] db-master [BACKREST-BIN] --config=[TEST_PATH]/db-master/pgbackrest.conf --log-level-console=warn --output=json info
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
[
|
||||
{
|
||||
"archive" : {
|
||||
"max" : null,
|
||||
"min" : null
|
||||
},
|
||||
"backup" : [
|
||||
{
|
||||
"archive" : {
|
||||
@@ -4090,6 +4118,10 @@ info all stanzas - normal output (db-master host)
|
||||
}
|
||||
},
|
||||
{
|
||||
"archive" : {
|
||||
"max" : null,
|
||||
"min" : null
|
||||
},
|
||||
"backup" : [],
|
||||
"db" : [],
|
||||
"name" : "db_empty",
|
||||
@@ -4105,6 +4137,7 @@ info bogus stanza - bogus stanza (backup host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
stanza: bogus
|
||||
status: error (missing stanza path)
|
||||
wal archive min/max: none present
|
||||
|
||||
info bogus stanza - bogus stanza (db-master host)
|
||||
> [CONTAINER-EXEC] db-master [BACKREST-BIN] --config=[TEST_PATH]/db-master/pgbackrest.conf --log-level-console=warn --stanza=bogus --output=json info
|
||||
|
@@ -3203,50 +3203,59 @@ info db stanza - normal output (db-master host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
stanza: db
|
||||
status: ok
|
||||
wal archive min/max: none present
|
||||
|
||||
full backup: [BACKUP-FULL-2]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 128KB
|
||||
repository size: 1.2KB, repository backup size: 1.2KB
|
||||
|
||||
diff backup: [BACKUP-DIFF-2]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 25B
|
||||
repository size: 1.3KB, repository backup size: 85B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 13B
|
||||
repository size: 1.4KB, repository backup size: 53B
|
||||
backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-4]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 8B
|
||||
repository size: 1.2KB, 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]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 39B
|
||||
repository size: 1.2KB, repository backup size: 139B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-5]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 0B
|
||||
repository size: 1.2KB, repository backup size: 0B
|
||||
backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-3]
|
||||
|
||||
diff backup: [BACKUP-DIFF-4]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 30B
|
||||
repository size: 1.1KB, repository backup size: 90B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
full backup: [BACKUP-FULL-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 112KB
|
||||
repository size: 1.2KB, repository backup size: 1.2KB
|
||||
|
||||
@@ -3255,6 +3264,10 @@ info db stanza - normal output (backup host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
[
|
||||
{
|
||||
"archive" : {
|
||||
"max" : null,
|
||||
"min" : null
|
||||
},
|
||||
"backup" : [
|
||||
{
|
||||
"archive" : {
|
||||
@@ -3829,67 +3842,82 @@ info all stanzas - normal output (backup host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
stanza: db
|
||||
status: ok
|
||||
wal archive min/max: none present
|
||||
|
||||
full backup: [BACKUP-FULL-2]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 128KB
|
||||
repository size: 1.2KB, repository backup size: 1.2KB
|
||||
|
||||
diff backup: [BACKUP-DIFF-2]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 25B
|
||||
repository size: 1.3KB, repository backup size: 85B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 128KB, backup size: 13B
|
||||
repository size: 1.4KB, repository backup size: 53B
|
||||
backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-4]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 8B
|
||||
repository size: 1.2KB, 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]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 39B
|
||||
repository size: 1.2KB, repository backup size: 139B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
incr backup: [BACKUP-INCR-5]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 0B
|
||||
repository size: 1.2KB, repository backup size: 0B
|
||||
backup reference list: [BACKUP-FULL-2], [BACKUP-DIFF-3]
|
||||
|
||||
diff backup: [BACKUP-DIFF-4]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 30B
|
||||
repository size: 1.1KB, repository backup size: 90B
|
||||
backup reference list: [BACKUP-FULL-2]
|
||||
|
||||
full backup: [BACKUP-FULL-3]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 112KB
|
||||
repository size: 1.2KB, repository backup size: 1.2KB
|
||||
|
||||
diff backup: [BACKUP-DIFF-5]
|
||||
start / stop timestamp: [TIMESTAMP-STR]
|
||||
timestamp start/stop: [TIMESTAMP-STR]
|
||||
wal start/stop: n/a
|
||||
database size: 112KB, backup size: 9B
|
||||
repository size: 1.2KB, repository backup size: 29B
|
||||
backup reference list: [BACKUP-FULL-3]
|
||||
|
||||
stanza: db_empty
|
||||
status: error (no valid backups)
|
||||
wal archive min/max: none present
|
||||
|
||||
info all stanzas - normal output (db-master host)
|
||||
> [CONTAINER-EXEC] db-master [BACKREST-BIN] --config=[TEST_PATH]/db-master/pgbackrest.conf --log-level-console=warn --output=json info
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
[
|
||||
{
|
||||
"archive" : {
|
||||
"max" : null,
|
||||
"min" : null
|
||||
},
|
||||
"backup" : [
|
||||
{
|
||||
"archive" : {
|
||||
@@ -4185,6 +4213,10 @@ info all stanzas - normal output (db-master host)
|
||||
}
|
||||
},
|
||||
{
|
||||
"archive" : {
|
||||
"max" : null,
|
||||
"min" : null
|
||||
},
|
||||
"backup" : [],
|
||||
"db" : [],
|
||||
"name" : "db_empty",
|
||||
@@ -4200,6 +4232,7 @@ info bogus stanza - bogus stanza (backup host)
|
||||
------------------------------------------------------------------------------------------------------------------------------------
|
||||
stanza: bogus
|
||||
status: error (missing stanza path)
|
||||
wal archive min/max: none present
|
||||
|
||||
info bogus stanza - bogus stanza (db-master host)
|
||||
> [CONTAINER-EXEC] db-master [BACKREST-BIN] --config=[TEST_PATH]/db-master/pgbackrest.conf --log-level-console=warn --stanza=bogus --output=json info
|
||||
|
@@ -65,6 +65,9 @@ use constant TESTDEF_MODULE_ARCHIVE_PUSH_ASYNC => TESTDEF_M
|
||||
use constant TESTDEF_MODULE_ARCHIVE_PUSH_FILE => TESTDEF_MODULE_ARCHIVE_PUSH . 'File';
|
||||
push @EXPORT, qw(TESTDEF_MODULE_ARCHIVE_PUSH_FILE);
|
||||
|
||||
use constant TESTDEF_MODULE_INFO => 'Info';
|
||||
push @EXPORT, qw(TESTDEF_MODULE_INFO);
|
||||
|
||||
################################################################################################################################
|
||||
# Define tests
|
||||
################################################################################################################################
|
||||
@@ -279,6 +282,31 @@ my $oTestDef =
|
||||
},
|
||||
]
|
||||
},
|
||||
# Info tests
|
||||
{
|
||||
&TESTDEF_MODULE_NAME => 'info',
|
||||
&TESTDEF_TEST_CONTAINER => false,
|
||||
&TESTDEF_EXPECT => true,
|
||||
|
||||
&TESTDEF_TEST =>
|
||||
[
|
||||
{
|
||||
&TESTDEF_TEST_NAME => 'unit',
|
||||
&TESTDEF_TEST_CONTAINER => true,
|
||||
&TESTDEF_TEST_INDIVIDUAL => false,
|
||||
&TESTDEF_EXPECT => false,
|
||||
&TESTDEF_TEST_TOTAL => 1,
|
||||
|
||||
&TESTDEF_TEST_COVERAGE =>
|
||||
{
|
||||
&TESTDEF_TEST_ALL =>
|
||||
{
|
||||
&TESTDEF_MODULE_INFO => TESTDEF_COVERAGE_FULL,
|
||||
}
|
||||
},
|
||||
},
|
||||
]
|
||||
},
|
||||
# Full tests
|
||||
{
|
||||
&TESTDEF_MODULE_NAME => 'full',
|
||||
|
@@ -393,7 +393,7 @@ sub regExpReplaceAll
|
||||
$strLine = $self->regExpReplace($strLine, 'SIZE', "size\"[ ]{0,1}:[ ]{0,1}[0-9]+", '[0-9]+$', false);
|
||||
$strLine = $self->regExpReplace($strLine, 'DELTA', "delta\"[ ]{0,1}:[ ]{0,1}[0-9]+", '[0-9]+$', false);
|
||||
$strLine = $self->regExpReplace(
|
||||
$strLine, 'TIMESTAMP-STR', " timestamp: $strTimestampRegExp / $strTimestampRegExp",
|
||||
$strLine, 'TIMESTAMP-STR', "timestamp start\/stop: $strTimestampRegExp / $strTimestampRegExp",
|
||||
"${strTimestampRegExp} / ${strTimestampRegExp}\$", false);
|
||||
$strLine = $self->regExpReplace($strLine, 'CHECKSUM', 'checksum=[\"]{0,1}[0-f]{40}', '[0-f]{40}$', false);
|
||||
|
||||
|
@@ -11,6 +11,7 @@ use strict;
|
||||
use warnings FATAL => qw(all);
|
||||
use Carp qw(confess);
|
||||
|
||||
use pgBackRest::Archive::ArchiveInfo;
|
||||
use pgBackRest::BackupCommon;
|
||||
use pgBackRest::BackupInfo;
|
||||
use pgBackRest::Common::Ini;
|
||||
@@ -48,7 +49,7 @@ sub new
|
||||
logDebugParam
|
||||
(
|
||||
__PACKAGE__ . '->new', \@_,
|
||||
{name => 'oHostBackup', trace => true},
|
||||
{name => 'oHostBackup', required => false, trace => true},
|
||||
{name => 'strBackRestExe', trace => true},
|
||||
{name => 'oFile', trace => true},
|
||||
{name => 'oLogTest', required => false, trace => true}
|
||||
@@ -96,7 +97,7 @@ sub stanzaCreate
|
||||
$$oStanza{iControlVersion} = $strDbVersionTemp . '1';
|
||||
|
||||
# Create the stanza backup path
|
||||
my $strBackupClusterPath = $self->{oHostBackup}->repoPath() . "/backup/${strStanza}";
|
||||
my $strBackupClusterPath = $self->{oFile}->pathGet(PATH_BACKUP_CLUSTER);
|
||||
filePathCreate("${strBackupClusterPath}/" . PATH_BACKUP_HISTORY, undef, undef, true);
|
||||
|
||||
$$oStanza{strBackupClusterPath} = $strBackupClusterPath;
|
||||
@@ -106,7 +107,7 @@ sub stanzaCreate
|
||||
$strDbVersion, $$oStanza{ullDbSysId}, $$oStanza{iControlVersion}, $$oStanza{iCatalogVersion});
|
||||
|
||||
# Create the stanza archive path
|
||||
my $strArchiveClusterPath = $self->{oHostBackup}->repoPath() . "/archive/${strStanza}";
|
||||
my $strArchiveClusterPath = $self->{oFile}->pathGet(PATH_BACKUP_ARCHIVE);
|
||||
filePathCreate($strArchiveClusterPath, undef, undef, true);
|
||||
|
||||
# Create the archive info object
|
||||
@@ -154,7 +155,12 @@ sub backupCreate
|
||||
|
||||
my $oStanza = $self->{oStanzaHash}{$strStanza};
|
||||
|
||||
my ($strArchiveStart, $strArchiveStop) = $self->archiveCreate($strStanza, $iArchiveBackupTotal);
|
||||
my ($strArchiveStart, $strArchiveStop);
|
||||
|
||||
if ($iArchiveBackupTotal != -1)
|
||||
{
|
||||
($strArchiveStart, $strArchiveStop) = $self->archiveCreate($strStanza, $iArchiveBackupTotal);
|
||||
}
|
||||
|
||||
# Create the manifest
|
||||
my $oLastManifest = $strType ne BACKUP_TYPE_FULL ? $$oStanza{oManifest} : undef;
|
||||
@@ -222,9 +228,12 @@ sub backupCreate
|
||||
$$oStanza{strBackupDescription} .=
|
||||
"* ${strType} backup: label = ${strBackupLabel}" .
|
||||
(defined($oLastManifest) ? ', prior = ' . $oLastManifest->get(MANIFEST_SECTION_BACKUP, MANIFEST_KEY_LABEL) : '') .
|
||||
", start = ${strArchiveStart}, stop = ${strArchiveStop}";
|
||||
(defined($strArchiveStart) ? ", start = ${strArchiveStart}, stop = ${strArchiveStop}" : ', not online');
|
||||
|
||||
$self->archiveCreate($strStanza, $iArchiveBetweenTotal);
|
||||
if ($iArchiveBetweenTotal != -1)
|
||||
{
|
||||
$self->archiveCreate($strStanza, $iArchiveBetweenTotal);
|
||||
}
|
||||
|
||||
# Return from function and log return values if any
|
||||
return logDebugReturn($strOperation);
|
||||
|
137
test/lib/pgBackRestTest/Info/InfoUnitTest.pm
Normal file
137
test/lib/pgBackRestTest/Info/InfoUnitTest.pm
Normal file
@@ -0,0 +1,137 @@
|
||||
####################################################################################################################################
|
||||
# InfoUnitTest.pm - Unit tests for Info module
|
||||
####################################################################################################################################
|
||||
package pgBackRestTest::Info::InfoUnitTest;
|
||||
use parent 'pgBackRestTest::Common::Env::EnvHostTest';
|
||||
|
||||
####################################################################################################################################
|
||||
# Perl includes
|
||||
####################################################################################################################################
|
||||
use strict;
|
||||
use warnings FATAL => qw(all);
|
||||
use Carp qw(confess);
|
||||
use English '-no_match_vars';
|
||||
|
||||
use File::Basename qw(dirname);
|
||||
use Storable qw(dclone);
|
||||
|
||||
use pgBackRest::BackupInfo;
|
||||
use pgBackRest::Common::Exception;
|
||||
use pgBackRest::Common::Lock;
|
||||
use pgBackRest::Common::Log;
|
||||
use pgBackRest::Config::Config;
|
||||
use pgBackRest::DbVersion;
|
||||
use pgBackRest::File;
|
||||
use pgBackRest::FileCommon;
|
||||
use pgBackRest::Info;
|
||||
use pgBackRest::Protocol::Common;
|
||||
use pgBackRest::Protocol::Protocol;
|
||||
|
||||
use pgBackRestTest::Common::Env::EnvHostTest;
|
||||
use pgBackRestTest::Common::ExecuteTest;
|
||||
use pgBackRestTest::Common::Host::HostBackupTest;
|
||||
use pgBackRestTest::Common::RunTest;
|
||||
use pgBackRestTest::Expire::ExpireEnvTest;
|
||||
|
||||
####################################################################################################################################
|
||||
# initModule
|
||||
####################################################################################################################################
|
||||
sub initModule
|
||||
{
|
||||
my $self = shift;
|
||||
|
||||
$self->{strRepoPath} = $self->testPath() . '/repo';
|
||||
$self->{strArchivePath} = "$self->{strRepoPath}/archive/" . $self->stanza();
|
||||
$self->{strBackupPath} = "$self->{strRepoPath}/backup/" . $self->stanza();
|
||||
|
||||
# Create the local file object
|
||||
$self->{oFile} =
|
||||
new pgBackRest::File
|
||||
(
|
||||
$self->stanza(),
|
||||
$self->{strRepoPath},
|
||||
new pgBackRest::Protocol::Common
|
||||
(
|
||||
OPTION_DEFAULT_BUFFER_SIZE, # Buffer size
|
||||
OPTION_DEFAULT_COMPRESS_LEVEL, # Compress level
|
||||
OPTION_DEFAULT_COMPRESS_LEVEL_NETWORK, # Compress network level
|
||||
HOST_PROTOCOL_TIMEOUT # Protocol timeout
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
####################################################################################################################################
|
||||
# initTest
|
||||
####################################################################################################################################
|
||||
sub initTest
|
||||
{
|
||||
my $self = shift;
|
||||
|
||||
# Create the test object
|
||||
$self->{oExpireTest} = new pgBackRestTest::Expire::ExpireEnvTest(undef, $self->backrestExe(), $self->{oFile}, undef);
|
||||
$self->{oExpireTest}->stanzaCreate($self->stanza(), PG_VERSION_94);
|
||||
}
|
||||
|
||||
####################################################################################################################################
|
||||
# run
|
||||
####################################################################################################################################
|
||||
sub run
|
||||
{
|
||||
my $self = shift;
|
||||
|
||||
my $oOption = {};
|
||||
|
||||
# $self->optionSetTest($oOption, OPTION_STANZA, $self->stanza());
|
||||
$self->optionSetTest($oOption, OPTION_REPO_PATH, $self->{strRepoPath});
|
||||
|
||||
# Used to create backups and WAL to test
|
||||
use constant SECONDS_PER_DAY => 86400;
|
||||
my $lBaseTime = 1486137448 - (60 * SECONDS_PER_DAY);
|
||||
|
||||
################################################################################################################################
|
||||
if ($self->begin("Info->formatTextStanza() && Info->formatTextBackup()"))
|
||||
{
|
||||
$self->configLoadExpect(dclone($oOption), CMD_INFO);
|
||||
|
||||
my $oInfo = new pgBackRest::Info();
|
||||
|
||||
#---------------------------------------------------------------------------------------------------------------------------
|
||||
my $hyStanza = $oInfo->stanzaList($self->{oFile}, $self->stanza());
|
||||
$self->testResult(sub {$oInfo->formatTextStanza(@{$hyStanza}[0])},
|
||||
"stanza: db\n status: error (no valid backups)\n wal archive min/max: none present", "stanza text output");
|
||||
|
||||
#---------------------------------------------------------------------------------------------------------------------------
|
||||
$self->{oExpireTest}->backupCreate($self->stanza(), BACKUP_TYPE_FULL, $lBaseTime += SECONDS_PER_DAY, -1, -1);
|
||||
$hyStanza = $oInfo->stanzaList($self->{oFile}, $self->stanza());
|
||||
|
||||
$self->testResult(sub {$oInfo->formatTextStanza(@{$hyStanza}[-1])},
|
||||
"stanza: db\n status: ok\n wal archive min/max: none present",
|
||||
"stanza text output");
|
||||
|
||||
$self->testResult(sub {$oInfo->formatTextBackup(@{$hyStanza}[-1]->{&INFO_BACKUP_SECTION_BACKUP}[-1])},
|
||||
" full backup: 20161206-155728F\n" .
|
||||
" timestamp start/stop: 2016-12-06 15:57:28 / 2016-12-06 15:57:28\n" .
|
||||
" wal start/stop: n/a\n" .
|
||||
" database size: 0B, backup size: 0B\n" .
|
||||
" repository size: 0B, repository backup size: 0B",
|
||||
"backup text output");
|
||||
|
||||
#---------------------------------------------------------------------------------------------------------------------------
|
||||
$self->{oExpireTest}->backupCreate($self->stanza(), BACKUP_TYPE_DIFF, $lBaseTime += SECONDS_PER_DAY);
|
||||
$hyStanza = $oInfo->stanzaList($self->{oFile}, $self->stanza());
|
||||
|
||||
$self->testResult(sub {$oInfo->formatTextStanza(@{$hyStanza}[-1])},
|
||||
"stanza: db\n status: ok\n wal archive min/max: 000000010000000000000000 / 000000010000000000000005",
|
||||
"stanza text output");
|
||||
|
||||
$self->testResult(sub {$oInfo->formatTextBackup(@{$hyStanza}[-1]->{&INFO_BACKUP_SECTION_BACKUP}[-1])},
|
||||
" diff backup: 20161206-155728F_20161207-155728D\n" .
|
||||
" timestamp start/stop: 2016-12-07 15:57:28 / 2016-12-07 15:57:28\n" .
|
||||
" wal start/stop: 000000010000000000000000 / 000000010000000000000002\n" .
|
||||
" database size: 0B, backup size: 0B\n" .
|
||||
" repository size: 0B, repository backup size: 0B",
|
||||
"backup text output");
|
||||
}
|
||||
}
|
||||
|
||||
1;
|
Reference in New Issue
Block a user