You've already forked pgbackrest
mirror of
https://github.com/pgbackrest/pgbackrest.git
synced 2025-07-17 01:12:23 +02:00
Add separate archive-push-async command.
This command was previously forked off from the archive-push command which required a bit of artificial option and log manipulation. A separate command is easier to test and will work on platforms that don't have fork(), e.g. Windows.
This commit is contained in:
@ -80,6 +80,8 @@ use constant CFGCMD_ARCHIVE_GET_ASYNC => 'archive-
|
|||||||
push @EXPORT, qw(CFGCMD_ARCHIVE_GET_ASYNC);
|
push @EXPORT, qw(CFGCMD_ARCHIVE_GET_ASYNC);
|
||||||
use constant CFGCMD_ARCHIVE_PUSH => 'archive-push';
|
use constant CFGCMD_ARCHIVE_PUSH => 'archive-push';
|
||||||
push @EXPORT, qw(CFGCMD_ARCHIVE_PUSH);
|
push @EXPORT, qw(CFGCMD_ARCHIVE_PUSH);
|
||||||
|
use constant CFGCMD_ARCHIVE_PUSH_ASYNC => 'archive-push-async';
|
||||||
|
push @EXPORT, qw(CFGCMD_ARCHIVE_PUSH_ASYNC);
|
||||||
use constant CFGCMD_BACKUP => 'backup';
|
use constant CFGCMD_BACKUP => 'backup';
|
||||||
push @EXPORT, qw(CFGCMD_BACKUP);
|
push @EXPORT, qw(CFGCMD_BACKUP);
|
||||||
use constant CFGCMD_CHECK => 'check';
|
use constant CFGCMD_CHECK => 'check';
|
||||||
@ -590,6 +592,14 @@ my $rhCommandDefine =
|
|||||||
&CFGDEF_PARAMETER_ALLOWED => true,
|
&CFGDEF_PARAMETER_ALLOWED => true,
|
||||||
},
|
},
|
||||||
|
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC =>
|
||||||
|
{
|
||||||
|
&CFGDEF_LOG_FILE => true,
|
||||||
|
&CFGDEF_LOCK_REQUIRED => true,
|
||||||
|
&CFGDEF_LOCK_TYPE => CFGDEF_LOCK_TYPE_ARCHIVE,
|
||||||
|
&CFGDEF_PARAMETER_ALLOWED => true,
|
||||||
|
},
|
||||||
|
|
||||||
&CFGCMD_BACKUP =>
|
&CFGCMD_BACKUP =>
|
||||||
{
|
{
|
||||||
&CFGDEF_LOCK_REQUIRED => true,
|
&CFGDEF_LOCK_REQUIRED => true,
|
||||||
@ -684,6 +694,7 @@ my %hConfigDefine =
|
|||||||
&CFGCMD_ARCHIVE_GET => {},
|
&CFGCMD_ARCHIVE_GET => {},
|
||||||
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
||||||
&CFGCMD_ARCHIVE_PUSH => {},
|
&CFGCMD_ARCHIVE_PUSH => {},
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC => {},
|
||||||
&CFGCMD_BACKUP => {},
|
&CFGCMD_BACKUP => {},
|
||||||
&CFGCMD_CHECK => {},
|
&CFGCMD_CHECK => {},
|
||||||
&CFGCMD_EXPIRE => {},
|
&CFGCMD_EXPIRE => {},
|
||||||
@ -783,6 +794,7 @@ my %hConfigDefine =
|
|||||||
&CFGCMD_ARCHIVE_GET => {},
|
&CFGCMD_ARCHIVE_GET => {},
|
||||||
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
||||||
&CFGCMD_ARCHIVE_PUSH => {},
|
&CFGCMD_ARCHIVE_PUSH => {},
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC => {},
|
||||||
&CFGCMD_BACKUP => {},
|
&CFGCMD_BACKUP => {},
|
||||||
&CFGCMD_CHECK => {},
|
&CFGCMD_CHECK => {},
|
||||||
&CFGCMD_EXPIRE => {},
|
&CFGCMD_EXPIRE => {},
|
||||||
@ -1091,6 +1103,7 @@ my %hConfigDefine =
|
|||||||
&CFGCMD_ARCHIVE_GET => {},
|
&CFGCMD_ARCHIVE_GET => {},
|
||||||
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
||||||
&CFGCMD_ARCHIVE_PUSH => {},
|
&CFGCMD_ARCHIVE_PUSH => {},
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC => {},
|
||||||
&CFGCMD_BACKUP => {},
|
&CFGCMD_BACKUP => {},
|
||||||
&CFGCMD_CHECK => {},
|
&CFGCMD_CHECK => {},
|
||||||
&CFGCMD_EXPIRE => {},
|
&CFGCMD_EXPIRE => {},
|
||||||
@ -1115,6 +1128,7 @@ my %hConfigDefine =
|
|||||||
&CFGCMD_ARCHIVE_GET => {},
|
&CFGCMD_ARCHIVE_GET => {},
|
||||||
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
||||||
&CFGCMD_ARCHIVE_PUSH => {},
|
&CFGCMD_ARCHIVE_PUSH => {},
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC => {},
|
||||||
&CFGCMD_BACKUP => {},
|
&CFGCMD_BACKUP => {},
|
||||||
&CFGCMD_CHECK => {},
|
&CFGCMD_CHECK => {},
|
||||||
&CFGCMD_LOCAL => {},
|
&CFGCMD_LOCAL => {},
|
||||||
@ -1147,6 +1161,7 @@ my %hConfigDefine =
|
|||||||
&CFGCMD_ARCHIVE_GET => {},
|
&CFGCMD_ARCHIVE_GET => {},
|
||||||
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
||||||
&CFGCMD_ARCHIVE_PUSH => {},
|
&CFGCMD_ARCHIVE_PUSH => {},
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC => {},
|
||||||
&CFGCMD_BACKUP => {},
|
&CFGCMD_BACKUP => {},
|
||||||
&CFGCMD_RESTORE => {},
|
&CFGCMD_RESTORE => {},
|
||||||
}
|
}
|
||||||
@ -1163,6 +1178,7 @@ my %hConfigDefine =
|
|||||||
&CFGCMD_ARCHIVE_GET => {},
|
&CFGCMD_ARCHIVE_GET => {},
|
||||||
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
||||||
&CFGCMD_ARCHIVE_PUSH => {},
|
&CFGCMD_ARCHIVE_PUSH => {},
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC => {},
|
||||||
&CFGCMD_BACKUP => {},
|
&CFGCMD_BACKUP => {},
|
||||||
&CFGCMD_CHECK => {},
|
&CFGCMD_CHECK => {},
|
||||||
&CFGCMD_INFO => {},
|
&CFGCMD_INFO => {},
|
||||||
@ -1186,6 +1202,7 @@ my %hConfigDefine =
|
|||||||
&CFGCMD_ARCHIVE_GET => {},
|
&CFGCMD_ARCHIVE_GET => {},
|
||||||
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
||||||
&CFGCMD_ARCHIVE_PUSH => {},
|
&CFGCMD_ARCHIVE_PUSH => {},
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC => {},
|
||||||
&CFGCMD_BACKUP => {},
|
&CFGCMD_BACKUP => {},
|
||||||
&CFGCMD_CHECK => {},
|
&CFGCMD_CHECK => {},
|
||||||
&CFGCMD_INFO => {},
|
&CFGCMD_INFO => {},
|
||||||
@ -1208,6 +1225,7 @@ my %hConfigDefine =
|
|||||||
&CFGCMD_ARCHIVE_GET => {},
|
&CFGCMD_ARCHIVE_GET => {},
|
||||||
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
||||||
&CFGCMD_ARCHIVE_PUSH => {},
|
&CFGCMD_ARCHIVE_PUSH => {},
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC => {},
|
||||||
&CFGCMD_BACKUP => {},
|
&CFGCMD_BACKUP => {},
|
||||||
&CFGCMD_CHECK => {},
|
&CFGCMD_CHECK => {},
|
||||||
&CFGCMD_EXPIRE => {},
|
&CFGCMD_EXPIRE => {},
|
||||||
@ -1232,6 +1250,7 @@ my %hConfigDefine =
|
|||||||
&CFGCMD_ARCHIVE_GET => {},
|
&CFGCMD_ARCHIVE_GET => {},
|
||||||
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
||||||
&CFGCMD_ARCHIVE_PUSH => {},
|
&CFGCMD_ARCHIVE_PUSH => {},
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC => {},
|
||||||
&CFGCMD_BACKUP => {},
|
&CFGCMD_BACKUP => {},
|
||||||
&CFGCMD_CHECK => {},
|
&CFGCMD_CHECK => {},
|
||||||
&CFGCMD_EXPIRE => {},
|
&CFGCMD_EXPIRE => {},
|
||||||
@ -1256,6 +1275,7 @@ my %hConfigDefine =
|
|||||||
&CFGCMD_ARCHIVE_GET => {},
|
&CFGCMD_ARCHIVE_GET => {},
|
||||||
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
||||||
&CFGCMD_ARCHIVE_PUSH => {},
|
&CFGCMD_ARCHIVE_PUSH => {},
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC => {},
|
||||||
&CFGCMD_BACKUP => {},
|
&CFGCMD_BACKUP => {},
|
||||||
&CFGCMD_EXPIRE => {},
|
&CFGCMD_EXPIRE => {},
|
||||||
&CFGCMD_INFO => {},
|
&CFGCMD_INFO => {},
|
||||||
@ -1280,6 +1300,7 @@ my %hConfigDefine =
|
|||||||
&CFGCMD_ARCHIVE_GET => {},
|
&CFGCMD_ARCHIVE_GET => {},
|
||||||
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
||||||
&CFGCMD_ARCHIVE_PUSH => {},
|
&CFGCMD_ARCHIVE_PUSH => {},
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC => {},
|
||||||
&CFGCMD_BACKUP => {},
|
&CFGCMD_BACKUP => {},
|
||||||
&CFGCMD_CHECK => {},
|
&CFGCMD_CHECK => {},
|
||||||
&CFGCMD_EXPIRE => {},
|
&CFGCMD_EXPIRE => {},
|
||||||
@ -1306,6 +1327,7 @@ my %hConfigDefine =
|
|||||||
&CFGCMD_ARCHIVE_GET => {},
|
&CFGCMD_ARCHIVE_GET => {},
|
||||||
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
||||||
&CFGCMD_ARCHIVE_PUSH => {},
|
&CFGCMD_ARCHIVE_PUSH => {},
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC => {},
|
||||||
&CFGCMD_BACKUP => {},
|
&CFGCMD_BACKUP => {},
|
||||||
&CFGCMD_CHECK => {},
|
&CFGCMD_CHECK => {},
|
||||||
&CFGCMD_EXPIRE => {},
|
&CFGCMD_EXPIRE => {},
|
||||||
@ -1331,6 +1353,7 @@ my %hConfigDefine =
|
|||||||
&CFGCMD_ARCHIVE_GET => {},
|
&CFGCMD_ARCHIVE_GET => {},
|
||||||
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
||||||
&CFGCMD_ARCHIVE_PUSH => {},
|
&CFGCMD_ARCHIVE_PUSH => {},
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC => {},
|
||||||
&CFGCMD_BACKUP => {},
|
&CFGCMD_BACKUP => {},
|
||||||
&CFGCMD_CHECK => {},
|
&CFGCMD_CHECK => {},
|
||||||
&CFGCMD_INFO => {},
|
&CFGCMD_INFO => {},
|
||||||
@ -1417,6 +1440,7 @@ my %hConfigDefine =
|
|||||||
&CFGCMD_ARCHIVE_GET => {},
|
&CFGCMD_ARCHIVE_GET => {},
|
||||||
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
||||||
&CFGCMD_ARCHIVE_PUSH => {},
|
&CFGCMD_ARCHIVE_PUSH => {},
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC => {},
|
||||||
&CFGCMD_BACKUP =>
|
&CFGCMD_BACKUP =>
|
||||||
{
|
{
|
||||||
&CFGDEF_INTERNAL => true,
|
&CFGDEF_INTERNAL => true,
|
||||||
@ -1462,6 +1486,7 @@ my %hConfigDefine =
|
|||||||
&CFGCMD_ARCHIVE_GET => {},
|
&CFGCMD_ARCHIVE_GET => {},
|
||||||
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
||||||
&CFGCMD_ARCHIVE_PUSH => {},
|
&CFGCMD_ARCHIVE_PUSH => {},
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC => {},
|
||||||
&CFGCMD_CHECK => {},
|
&CFGCMD_CHECK => {},
|
||||||
&CFGCMD_INFO => {},
|
&CFGCMD_INFO => {},
|
||||||
&CFGCMD_LOCAL => {},
|
&CFGCMD_LOCAL => {},
|
||||||
@ -1696,6 +1721,7 @@ my %hConfigDefine =
|
|||||||
&CFGCMD_ARCHIVE_GET => {},
|
&CFGCMD_ARCHIVE_GET => {},
|
||||||
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
||||||
&CFGCMD_ARCHIVE_PUSH => {},
|
&CFGCMD_ARCHIVE_PUSH => {},
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC => {},
|
||||||
&CFGCMD_BACKUP => {},
|
&CFGCMD_BACKUP => {},
|
||||||
&CFGCMD_CHECK => {},
|
&CFGCMD_CHECK => {},
|
||||||
&CFGCMD_EXPIRE => {},
|
&CFGCMD_EXPIRE => {},
|
||||||
@ -1803,6 +1829,7 @@ my %hConfigDefine =
|
|||||||
&CFGCMD_ARCHIVE_GET => {},
|
&CFGCMD_ARCHIVE_GET => {},
|
||||||
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
||||||
&CFGCMD_ARCHIVE_PUSH => {},
|
&CFGCMD_ARCHIVE_PUSH => {},
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC => {},
|
||||||
&CFGCMD_BACKUP => {},
|
&CFGCMD_BACKUP => {},
|
||||||
&CFGCMD_CHECK => {},
|
&CFGCMD_CHECK => {},
|
||||||
&CFGCMD_EXPIRE => {},
|
&CFGCMD_EXPIRE => {},
|
||||||
@ -1843,6 +1870,7 @@ my %hConfigDefine =
|
|||||||
&CFGDEF_DEPEND_LIST => [true],
|
&CFGDEF_DEPEND_LIST => [true],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC => {},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -1857,6 +1885,7 @@ my %hConfigDefine =
|
|||||||
&CFGCMD_ARCHIVE_GET => {},
|
&CFGCMD_ARCHIVE_GET => {},
|
||||||
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
||||||
&CFGCMD_ARCHIVE_PUSH => {},
|
&CFGCMD_ARCHIVE_PUSH => {},
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC => {},
|
||||||
&CFGCMD_BACKUP => {},
|
&CFGCMD_BACKUP => {},
|
||||||
&CFGCMD_RESTORE => {},
|
&CFGCMD_RESTORE => {},
|
||||||
}
|
}
|
||||||
@ -1884,6 +1913,7 @@ my %hConfigDefine =
|
|||||||
&CFGCMD_ARCHIVE_GET => {},
|
&CFGCMD_ARCHIVE_GET => {},
|
||||||
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
||||||
&CFGCMD_ARCHIVE_PUSH => {},
|
&CFGCMD_ARCHIVE_PUSH => {},
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC => {},
|
||||||
&CFGCMD_BACKUP => {},
|
&CFGCMD_BACKUP => {},
|
||||||
&CFGCMD_CHECK => {},
|
&CFGCMD_CHECK => {},
|
||||||
&CFGCMD_EXPIRE => {},
|
&CFGCMD_EXPIRE => {},
|
||||||
@ -1908,6 +1938,7 @@ my %hConfigDefine =
|
|||||||
&CFGCMD_ARCHIVE_GET => {},
|
&CFGCMD_ARCHIVE_GET => {},
|
||||||
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
||||||
&CFGCMD_ARCHIVE_PUSH => {},
|
&CFGCMD_ARCHIVE_PUSH => {},
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC => {},
|
||||||
&CFGCMD_BACKUP => {},
|
&CFGCMD_BACKUP => {},
|
||||||
&CFGCMD_CHECK => {},
|
&CFGCMD_CHECK => {},
|
||||||
&CFGCMD_EXPIRE => {},
|
&CFGCMD_EXPIRE => {},
|
||||||
@ -1940,6 +1971,7 @@ my %hConfigDefine =
|
|||||||
&CFGCMD_ARCHIVE_GET => {},
|
&CFGCMD_ARCHIVE_GET => {},
|
||||||
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
||||||
&CFGCMD_ARCHIVE_PUSH => {},
|
&CFGCMD_ARCHIVE_PUSH => {},
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC => {},
|
||||||
&CFGCMD_BACKUP => {},
|
&CFGCMD_BACKUP => {},
|
||||||
&CFGCMD_CHECK => {},
|
&CFGCMD_CHECK => {},
|
||||||
&CFGCMD_EXPIRE => {},
|
&CFGCMD_EXPIRE => {},
|
||||||
@ -1965,6 +1997,7 @@ my %hConfigDefine =
|
|||||||
&CFGCMD_ARCHIVE_GET => {},
|
&CFGCMD_ARCHIVE_GET => {},
|
||||||
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
&CFGCMD_ARCHIVE_GET_ASYNC => {},
|
||||||
&CFGCMD_ARCHIVE_PUSH => {},
|
&CFGCMD_ARCHIVE_PUSH => {},
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC => {},
|
||||||
&CFGCMD_BACKUP => {},
|
&CFGCMD_BACKUP => {},
|
||||||
&CFGCMD_CHECK => {},
|
&CFGCMD_CHECK => {},
|
||||||
&CFGCMD_EXPIRE => {},
|
&CFGCMD_EXPIRE => {},
|
||||||
@ -2015,6 +2048,7 @@ my %hConfigDefine =
|
|||||||
&CFGDEF_COMMAND =>
|
&CFGDEF_COMMAND =>
|
||||||
{
|
{
|
||||||
&CFGCMD_ARCHIVE_PUSH => {},
|
&CFGCMD_ARCHIVE_PUSH => {},
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC => {},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -2259,6 +2293,10 @@ my %hConfigDefine =
|
|||||||
{
|
{
|
||||||
&CFGDEF_INTERNAL => true,
|
&CFGDEF_INTERNAL => true,
|
||||||
},
|
},
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC =>
|
||||||
|
{
|
||||||
|
&CFGDEF_INTERNAL => true,
|
||||||
|
},
|
||||||
&CFGCMD_BACKUP => {},
|
&CFGCMD_BACKUP => {},
|
||||||
&CFGCMD_CHECK => {},
|
&CFGCMD_CHECK => {},
|
||||||
&CFGCMD_EXPIRE => {},
|
&CFGCMD_EXPIRE => {},
|
||||||
@ -2380,6 +2418,10 @@ my %hConfigDefine =
|
|||||||
{
|
{
|
||||||
&CFGDEF_REQUIRED => false
|
&CFGDEF_REQUIRED => false
|
||||||
},
|
},
|
||||||
|
&CFGCMD_ARCHIVE_PUSH_ASYNC =>
|
||||||
|
{
|
||||||
|
&CFGDEF_REQUIRED => false
|
||||||
|
},
|
||||||
&CFGCMD_BACKUP => {},
|
&CFGCMD_BACKUP => {},
|
||||||
&CFGCMD_CHECK => {},
|
&CFGCMD_CHECK => {},
|
||||||
&CFGCMD_LOCAL =>
|
&CFGCMD_LOCAL =>
|
||||||
|
@ -195,7 +195,8 @@ sub process
|
|||||||
|
|
||||||
foreach my $strCommand (cfgDefineCommandList())
|
foreach my $strCommand (cfgDefineCommandList())
|
||||||
{
|
{
|
||||||
if ($strCommand eq CFGCMD_REMOTE || $strCommand eq CFGCMD_LOCAL || $strCommand eq CFGCMD_ARCHIVE_GET_ASYNC)
|
if ($strCommand eq CFGCMD_REMOTE || $strCommand eq CFGCMD_LOCAL || $strCommand eq CFGCMD_ARCHIVE_GET_ASYNC ||
|
||||||
|
$strCommand eq CFGCMD_ARCHIVE_PUSH_ASYNC)
|
||||||
{
|
{
|
||||||
next;
|
next;
|
||||||
}
|
}
|
||||||
|
@ -15,6 +15,10 @@
|
|||||||
<release date="XXXX-XX-XX" version="2.12dev" title="UNDER DEVELOPMENT">
|
<release date="XXXX-XX-XX" version="2.12dev" title="UNDER DEVELOPMENT">
|
||||||
<release-core-list>
|
<release-core-list>
|
||||||
<release-development-list>
|
<release-development-list>
|
||||||
|
<release-item>
|
||||||
|
<p>Add separate <cmd>archive-push-async</cmd> command.</p>
|
||||||
|
</release-item>
|
||||||
|
|
||||||
<release-item>
|
<release-item>
|
||||||
<p>Add <id>CIFS</id> storage driver.</p>
|
<p>Add <id>CIFS</id> storage driver.</p>
|
||||||
</release-item>
|
</release-item>
|
||||||
|
@ -38,11 +38,13 @@ sub process
|
|||||||
(
|
(
|
||||||
$strOperation,
|
$strOperation,
|
||||||
$strWalPathFile,
|
$strWalPathFile,
|
||||||
|
$bAsync,
|
||||||
) =
|
) =
|
||||||
logDebugParam
|
logDebugParam
|
||||||
(
|
(
|
||||||
__PACKAGE__ . '->process', \@_,
|
__PACKAGE__ . '->process', \@_,
|
||||||
{name => 'strWalPathFile', required => false},
|
{name => 'strWalPathFile', required => false},
|
||||||
|
{name => 'bAsync', required => true},
|
||||||
);
|
);
|
||||||
|
|
||||||
# Make sure the command happens on the db side
|
# Make sure the command happens on the db side
|
||||||
@ -61,7 +63,7 @@ sub process
|
|||||||
my $strWalFile = basename($strWalPathFile);
|
my $strWalFile = basename($strWalPathFile);
|
||||||
|
|
||||||
# Start the async process and wait for WAL to complete
|
# Start the async process and wait for WAL to complete
|
||||||
if (cfgOption(CFGOPT_ARCHIVE_ASYNC))
|
if ($bAsync)
|
||||||
{
|
{
|
||||||
# Load module dynamically
|
# Load module dynamically
|
||||||
require pgBackRest::Archive::Push::Async;
|
require pgBackRest::Archive::Push::Async;
|
||||||
|
@ -106,6 +106,7 @@ sub libcAutoExportTag
|
|||||||
'CFGCMD_ARCHIVE_GET',
|
'CFGCMD_ARCHIVE_GET',
|
||||||
'CFGCMD_ARCHIVE_GET_ASYNC',
|
'CFGCMD_ARCHIVE_GET_ASYNC',
|
||||||
'CFGCMD_ARCHIVE_PUSH',
|
'CFGCMD_ARCHIVE_PUSH',
|
||||||
|
'CFGCMD_ARCHIVE_PUSH_ASYNC',
|
||||||
'CFGCMD_BACKUP',
|
'CFGCMD_BACKUP',
|
||||||
'CFGCMD_CHECK',
|
'CFGCMD_CHECK',
|
||||||
'CFGCMD_EXPIRE',
|
'CFGCMD_EXPIRE',
|
||||||
|
@ -77,7 +77,18 @@ sub main
|
|||||||
require pgBackRest::Archive::Push::Push;
|
require pgBackRest::Archive::Push::Push;
|
||||||
pgBackRest::Archive::Push::Push->import();
|
pgBackRest::Archive::Push::Push->import();
|
||||||
|
|
||||||
new pgBackRest::Archive::Push::Push()->process($stryCommandArg[0]);
|
new pgBackRest::Archive::Push::Push()->process($stryCommandArg[0], false);
|
||||||
|
}
|
||||||
|
|
||||||
|
# Process archive-push-async command
|
||||||
|
# --------------------------------------------------------------------------------------------------------------------------
|
||||||
|
elsif (cfgCommandTest(CFGCMD_ARCHIVE_PUSH_ASYNC))
|
||||||
|
{
|
||||||
|
# Load module dynamically
|
||||||
|
require pgBackRest::Archive::Push::Push;
|
||||||
|
pgBackRest::Archive::Push::Push->import();
|
||||||
|
|
||||||
|
new pgBackRest::Archive::Push::Push()->process($stryCommandArg[0], true);
|
||||||
}
|
}
|
||||||
|
|
||||||
# Process remote command
|
# Process remote command
|
||||||
|
@ -211,7 +211,7 @@ command/archive/get/get.o: command/archive/get/get.c command/archive/common.h co
|
|||||||
command/archive/get/protocol.o: command/archive/get/protocol.c command/archive/get/file.h command/archive/get/protocol.h common/assert.h common/crypto/common.h common/debug.h common/error.auto.h common/error.h common/io/filter/filter.h common/io/filter/group.h common/io/io.h common/io/read.h common/io/write.h common/lock.h common/log.h common/logLevel.h common/memContext.h common/stackTrace.h common/time.h common/type/buffer.h common/type/convert.h common/type/keyValue.h common/type/string.h common/type/stringList.h common/type/variant.h common/type/variantList.h config/config.auto.h config/config.h config/define.auto.h config/define.h protocol/server.h storage/fileRead.h storage/fileWrite.h storage/helper.h storage/info.h storage/storage.h
|
command/archive/get/protocol.o: command/archive/get/protocol.c command/archive/get/file.h command/archive/get/protocol.h common/assert.h common/crypto/common.h common/debug.h common/error.auto.h common/error.h common/io/filter/filter.h common/io/filter/group.h common/io/io.h common/io/read.h common/io/write.h common/lock.h common/log.h common/logLevel.h common/memContext.h common/stackTrace.h common/time.h common/type/buffer.h common/type/convert.h common/type/keyValue.h common/type/string.h common/type/stringList.h common/type/variant.h common/type/variantList.h config/config.auto.h config/config.h config/define.auto.h config/define.h protocol/server.h storage/fileRead.h storage/fileWrite.h storage/helper.h storage/info.h storage/storage.h
|
||||||
$(CC) $(CFLAGS) -c command/archive/get/protocol.c -o command/archive/get/protocol.o
|
$(CC) $(CFLAGS) -c command/archive/get/protocol.c -o command/archive/get/protocol.o
|
||||||
|
|
||||||
command/archive/push/push.o: command/archive/push/push.c command/archive/common.h command/command.h common/assert.h common/debug.h common/error.auto.h common/error.h common/fork.h common/io/filter/filter.h common/io/filter/group.h common/io/read.h common/io/write.h common/lock.h common/log.h common/logLevel.h common/memContext.h common/stackTrace.h common/time.h common/type/buffer.h common/type/convert.h common/type/keyValue.h common/type/string.h common/type/stringList.h common/type/variant.h common/type/variantList.h common/wait.h config/config.auto.h config/config.h config/define.auto.h config/define.h config/load.h perl/exec.h storage/fileRead.h storage/fileWrite.h storage/helper.h storage/info.h storage/storage.h
|
command/archive/push/push.o: command/archive/push/push.c command/archive/common.h command/command.h common/assert.h common/debug.h common/error.auto.h common/error.h common/fork.h common/io/filter/filter.h common/io/filter/group.h common/io/read.h common/io/write.h common/lock.h common/log.h common/logLevel.h common/memContext.h common/stackTrace.h common/time.h common/type/buffer.h common/type/convert.h common/type/keyValue.h common/type/string.h common/type/stringList.h common/type/variant.h common/type/variantList.h common/wait.h config/config.auto.h config/config.h config/define.auto.h config/define.h config/exec.h perl/exec.h storage/fileRead.h storage/fileWrite.h storage/helper.h storage/info.h storage/storage.h
|
||||||
$(CC) $(CFLAGS) -c command/archive/push/push.c -o command/archive/push/push.o
|
$(CC) $(CFLAGS) -c command/archive/push/push.c -o command/archive/push/push.o
|
||||||
|
|
||||||
command/command.o: command/command.c common/assert.h common/debug.h common/error.auto.h common/error.h common/lock.h common/log.h common/logLevel.h common/memContext.h common/stackTrace.h common/time.h common/type/buffer.h common/type/convert.h common/type/keyValue.h common/type/string.h common/type/stringList.h common/type/variant.h common/type/variantList.h config/config.auto.h config/config.h config/define.auto.h config/define.h version.h
|
command/command.o: command/command.c common/assert.h common/debug.h common/error.auto.h common/error.h common/lock.h common/log.h common/logLevel.h common/memContext.h common/stackTrace.h common/time.h common/type/buffer.h common/type/convert.h common/type/keyValue.h common/type/string.h common/type/stringList.h common/type/variant.h common/type/variantList.h config/config.auto.h config/config.h config/define.auto.h config/define.h version.h
|
||||||
|
@ -11,7 +11,7 @@ Archive Push Command
|
|||||||
#include "common/memContext.h"
|
#include "common/memContext.h"
|
||||||
#include "common/wait.h"
|
#include "common/wait.h"
|
||||||
#include "config/config.h"
|
#include "config/config.h"
|
||||||
#include "config/load.h"
|
#include "config/exec.h"
|
||||||
#include "perl/exec.h"
|
#include "perl/exec.h"
|
||||||
#include "storage/helper.h"
|
#include "storage/helper.h"
|
||||||
|
|
||||||
@ -39,7 +39,6 @@ cmdArchivePush(void)
|
|||||||
bool pushed = false; // Has the WAL segment been pushed yet?
|
bool pushed = false; // Has the WAL segment been pushed yet?
|
||||||
bool forked = false; // Has the async process been forked yet?
|
bool forked = false; // Has the async process been forked yet?
|
||||||
bool confessOnError = false; // Should we confess errors?
|
bool confessOnError = false; // Should we confess errors?
|
||||||
bool server = false; // Is this the async server process?
|
|
||||||
|
|
||||||
// Loop and wait for the WAL segment to be pushed
|
// Loop and wait for the WAL segment to be pushed
|
||||||
Wait *wait = waitNew((TimeMSec)(cfgOptionDbl(cfgOptArchiveTimeout) * MSEC_PER_SEC));
|
Wait *wait = waitNew((TimeMSec)(cfgOptionDbl(cfgOptArchiveTimeout) * MSEC_PER_SEC));
|
||||||
@ -56,74 +55,52 @@ cmdArchivePush(void)
|
|||||||
if (!pushed && !forked &&
|
if (!pushed && !forked &&
|
||||||
lockAcquire(cfgOptionStr(cfgOptLockPath), cfgOptionStr(cfgOptStanza), cfgLockType(), 0, false))
|
lockAcquire(cfgOptionStr(cfgOptLockPath), cfgOptionStr(cfgOptStanza), cfgLockType(), 0, false))
|
||||||
{
|
{
|
||||||
|
// The async process should not output on the console at all
|
||||||
|
KeyValue *optionReplace = kvNew();
|
||||||
|
|
||||||
|
kvPut(optionReplace, varNewStr(strNew(cfgOptionName(cfgOptLogLevelConsole))), varNewStrZ("off"));
|
||||||
|
kvPut(optionReplace, varNewStr(strNew(cfgOptionName(cfgOptLogLevelStderr))), varNewStrZ("off"));
|
||||||
|
|
||||||
|
// Generate command options
|
||||||
|
StringList *commandExec = cfgExecParam(cfgCmdArchivePushAsync, optionReplace);
|
||||||
|
strLstInsert(commandExec, 0, cfgExe());
|
||||||
|
strLstAdd(commandExec, strLstGet(commandParam, 0));
|
||||||
|
|
||||||
|
// Release the lock and mark the async process as forked
|
||||||
|
lockRelease(true);
|
||||||
|
forked = true;
|
||||||
|
|
||||||
// Fork off the async process
|
// Fork off the async process
|
||||||
if (fork() == 0)
|
if (fork() == 0)
|
||||||
{
|
{
|
||||||
// This is the server process
|
|
||||||
server = true;
|
|
||||||
|
|
||||||
// The async process should not output on the console at all
|
|
||||||
cfgOptionSet(cfgOptLogLevelConsole, cfgSourceParam, varNewStrZ("off"));
|
|
||||||
cfgOptionSet(cfgOptLogLevelStderr, cfgSourceParam, varNewStrZ("off"));
|
|
||||||
cfgLoadLogSetting();
|
|
||||||
|
|
||||||
// Open the log file
|
|
||||||
cfgLoadLogFile(
|
|
||||||
strNewFmt("%s/%s-%s-async.log", strPtr(cfgOptionStr(cfgOptLogPath)),
|
|
||||||
strPtr(cfgOptionStr(cfgOptStanza)), cfgCommandName(cfgCommand())));
|
|
||||||
|
|
||||||
// Log command info since we are starting a new log
|
|
||||||
cmdBegin(true);
|
|
||||||
|
|
||||||
// Detach from parent process
|
// Detach from parent process
|
||||||
forkDetach();
|
forkDetach();
|
||||||
|
|
||||||
// Execute async process and catch exceptions
|
// Execute the binary. This statement will not return if it is successful.
|
||||||
TRY_BEGIN()
|
THROW_ON_SYS_ERROR_FMT(
|
||||||
{
|
execvp(strPtr(cfgExe()), (char ** const)strLstPtr(commandExec)) == -1,
|
||||||
perlExec();
|
ExecuteError, "unable to execute '%s'", cfgCommandName(cfgCmdArchiveGetAsync));
|
||||||
}
|
|
||||||
CATCH_ANY()
|
|
||||||
{
|
|
||||||
RETHROW();
|
|
||||||
}
|
|
||||||
FINALLY()
|
|
||||||
{
|
|
||||||
// Release the lock (mostly here for testing since it would be freed in exitSafe() anyway)
|
|
||||||
lockRelease(true);
|
|
||||||
}
|
|
||||||
TRY_END();
|
|
||||||
}
|
|
||||||
// Else mark async process as forked
|
|
||||||
else
|
|
||||||
{
|
|
||||||
lockClear(true);
|
|
||||||
forked = true;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Now that the async process has been launched, confess any errors that are found
|
// Now that the async process has been launched, confess any errors that are found
|
||||||
confessOnError = true;
|
confessOnError = true;
|
||||||
}
|
}
|
||||||
while (!server && !pushed && waitMore(wait));
|
while (!pushed && waitMore(wait));
|
||||||
|
|
||||||
// The aysnc server does not give notifications
|
// If the WAL segment was not pushed then error
|
||||||
if (!server)
|
if (!pushed)
|
||||||
{
|
{
|
||||||
// If the WAL segment was not pushed then error
|
THROW_FMT(
|
||||||
if (!pushed)
|
ArchiveTimeoutError, "unable to push WAL segment '%s' asynchronously after %lg second(s)",
|
||||||
{
|
strPtr(walSegment), cfgOptionDbl(cfgOptArchiveTimeout));
|
||||||
THROW_FMT(
|
|
||||||
ArchiveTimeoutError, "unable to push WAL segment '%s' asynchronously after %lg second(s)",
|
|
||||||
strPtr(walSegment), cfgOptionDbl(cfgOptArchiveTimeout));
|
|
||||||
}
|
|
||||||
|
|
||||||
// Log success
|
|
||||||
LOG_INFO("pushed WAL segment %s asynchronously", strPtr(walSegment));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Log success
|
||||||
|
LOG_INFO("pushed WAL segment %s asynchronously", strPtr(walSegment));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
THROW(AssertError, "archive-push in C does not support synchronous mode");
|
perlExec();
|
||||||
}
|
}
|
||||||
MEM_CONTEXT_TEMP_END();
|
MEM_CONTEXT_TEMP_END();
|
||||||
|
|
||||||
|
@ -45,6 +45,18 @@ static ConfigCommandData configCommandData[CFG_COMMAND_TOTAL] = CONFIG_COMMAND_L
|
|||||||
CONFIG_COMMAND_PARAMETER_ALLOWED(true)
|
CONFIG_COMMAND_PARAMETER_ALLOWED(true)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
CONFIG_COMMAND
|
||||||
|
(
|
||||||
|
CONFIG_COMMAND_NAME("archive-push-async")
|
||||||
|
|
||||||
|
CONFIG_COMMAND_LOG_FILE(true)
|
||||||
|
CONFIG_COMMAND_LOG_LEVEL_DEFAULT(logLevelInfo)
|
||||||
|
CONFIG_COMMAND_LOG_LEVEL_STDERR_MAX(logLevelTrace)
|
||||||
|
CONFIG_COMMAND_LOCK_REQUIRED(true)
|
||||||
|
CONFIG_COMMAND_LOCK_TYPE(lockTypeArchive)
|
||||||
|
CONFIG_COMMAND_PARAMETER_ALLOWED(true)
|
||||||
|
)
|
||||||
|
|
||||||
CONFIG_COMMAND
|
CONFIG_COMMAND
|
||||||
(
|
(
|
||||||
CONFIG_COMMAND_NAME("backup")
|
CONFIG_COMMAND_NAME("backup")
|
||||||
|
@ -9,7 +9,7 @@ Automatically generated by Build.pm -- do not modify directly.
|
|||||||
/***********************************************************************************************************************************
|
/***********************************************************************************************************************************
|
||||||
Command constants
|
Command constants
|
||||||
***********************************************************************************************************************************/
|
***********************************************************************************************************************************/
|
||||||
#define CFG_COMMAND_TOTAL 18
|
#define CFG_COMMAND_TOTAL 19
|
||||||
|
|
||||||
/***********************************************************************************************************************************
|
/***********************************************************************************************************************************
|
||||||
Option constants
|
Option constants
|
||||||
@ -24,6 +24,7 @@ typedef enum
|
|||||||
cfgCmdArchiveGet,
|
cfgCmdArchiveGet,
|
||||||
cfgCmdArchiveGetAsync,
|
cfgCmdArchiveGetAsync,
|
||||||
cfgCmdArchivePush,
|
cfgCmdArchivePush,
|
||||||
|
cfgCmdArchivePushAsync,
|
||||||
cfgCmdBackup,
|
cfgCmdBackup,
|
||||||
cfgCmdCheck,
|
cfgCmdCheck,
|
||||||
cfgCmdExpire,
|
cfgCmdExpire,
|
||||||
|
@ -36,6 +36,11 @@ static ConfigDefineCommandData configDefineCommandData[] = CFGDEFDATA_COMMAND_LI
|
|||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
CFGDEFDATA_COMMAND
|
||||||
|
(
|
||||||
|
CFGDEFDATA_COMMAND_NAME("archive-push-async")
|
||||||
|
)
|
||||||
|
|
||||||
CFGDEFDATA_COMMAND
|
CFGDEFDATA_COMMAND
|
||||||
(
|
(
|
||||||
CFGDEFDATA_COMMAND_NAME("backup")
|
CFGDEFDATA_COMMAND_NAME("backup")
|
||||||
@ -420,6 +425,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND_LIST
|
CFGDEFDATA_OPTION_COMMAND_LIST
|
||||||
(
|
(
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
)
|
)
|
||||||
|
|
||||||
CFGDEFDATA_OPTION_OPTIONAL_LIST
|
CFGDEFDATA_OPTION_OPTIONAL_LIST
|
||||||
@ -530,6 +536,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -616,6 +623,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -678,6 +686,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdRestore)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdRestore)
|
||||||
)
|
)
|
||||||
@ -712,6 +721,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdInfo)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdInfo)
|
||||||
@ -757,6 +767,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdInfo)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdInfo)
|
||||||
@ -799,6 +810,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -844,6 +856,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -892,6 +905,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -969,6 +983,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdLocal)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdLocal)
|
||||||
@ -1282,6 +1297,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdInfo)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdInfo)
|
||||||
@ -1333,6 +1349,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -1394,6 +1411,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -1474,6 +1492,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -1530,6 +1549,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -1574,6 +1594,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -1619,6 +1640,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -1701,6 +1723,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -1843,6 +1866,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -1881,6 +1905,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -1919,6 +1944,13 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_OPTIONAL_INTERNAL(true)
|
CFGDEFDATA_OPTION_OPTIONAL_INTERNAL(true)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
CFGDEFDATA_OPTION_OPTIONAL_COMMAND_OVERRRIDE
|
||||||
|
(
|
||||||
|
CFGDEFDATA_OPTION_OPTIONAL_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
|
|
||||||
|
CFGDEFDATA_OPTION_OPTIONAL_INTERNAL(true)
|
||||||
|
)
|
||||||
|
|
||||||
CFGDEFDATA_OPTION_OPTIONAL_COMMAND_OVERRRIDE
|
CFGDEFDATA_OPTION_OPTIONAL_COMMAND_OVERRRIDE
|
||||||
(
|
(
|
||||||
CFGDEFDATA_OPTION_OPTIONAL_COMMAND(cfgDefCmdRestore)
|
CFGDEFDATA_OPTION_OPTIONAL_COMMAND(cfgDefCmdRestore)
|
||||||
@ -2205,6 +2237,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdLocal)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdLocal)
|
||||||
@ -2241,6 +2274,13 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_OPTIONAL_REQUIRED(false)
|
CFGDEFDATA_OPTION_OPTIONAL_REQUIRED(false)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
CFGDEFDATA_OPTION_OPTIONAL_COMMAND_OVERRRIDE
|
||||||
|
(
|
||||||
|
CFGDEFDATA_OPTION_OPTIONAL_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
|
|
||||||
|
CFGDEFDATA_OPTION_OPTIONAL_REQUIRED(false)
|
||||||
|
)
|
||||||
|
|
||||||
CFGDEFDATA_OPTION_OPTIONAL_COMMAND_OVERRRIDE
|
CFGDEFDATA_OPTION_OPTIONAL_COMMAND_OVERRRIDE
|
||||||
(
|
(
|
||||||
CFGDEFDATA_OPTION_OPTIONAL_COMMAND(cfgDefCmdLocal)
|
CFGDEFDATA_OPTION_OPTIONAL_COMMAND(cfgDefCmdLocal)
|
||||||
@ -2402,6 +2442,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdRestore)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdRestore)
|
||||||
)
|
)
|
||||||
@ -2439,6 +2480,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdInfo)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdInfo)
|
||||||
@ -2527,6 +2569,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -2582,6 +2625,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -2669,6 +2713,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -2749,6 +2794,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdInfo)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdInfo)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdLocal)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdLocal)
|
||||||
@ -2790,6 +2836,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdInfo)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdInfo)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdLocal)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdLocal)
|
||||||
@ -2832,6 +2879,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdInfo)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdInfo)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdLocal)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdLocal)
|
||||||
@ -2873,6 +2921,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdInfo)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdInfo)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdLocal)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdLocal)
|
||||||
@ -2913,6 +2962,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdInfo)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdInfo)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdLocal)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdLocal)
|
||||||
@ -2957,6 +3007,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdInfo)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdInfo)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdLocal)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdLocal)
|
||||||
@ -3003,6 +3054,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -3209,6 +3261,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -3259,6 +3312,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -3309,6 +3363,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -3359,6 +3414,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -3409,6 +3465,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -3459,6 +3516,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -3523,6 +3581,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -3587,6 +3646,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -3637,6 +3697,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -3688,6 +3749,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -3743,6 +3805,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
@ -3877,6 +3940,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdLocal)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdLocal)
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -3939,6 +4003,7 @@ static ConfigDefineOptionData configDefineOptionData[] = CFGDEFDATA_OPTION_LIST
|
|||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGet)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchiveGetAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePush)
|
||||||
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdArchivePushAsync)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdBackup)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdCheck)
|
||||||
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
CFGDEFDATA_OPTION_COMMAND(cfgDefCmdExpire)
|
||||||
|
@ -14,6 +14,7 @@ typedef enum
|
|||||||
cfgDefCmdArchiveGet,
|
cfgDefCmdArchiveGet,
|
||||||
cfgDefCmdArchiveGetAsync,
|
cfgDefCmdArchiveGetAsync,
|
||||||
cfgDefCmdArchivePush,
|
cfgDefCmdArchivePush,
|
||||||
|
cfgDefCmdArchivePushAsync,
|
||||||
cfgDefCmdBackup,
|
cfgDefCmdBackup,
|
||||||
cfgDefCmdCheck,
|
cfgDefCmdCheck,
|
||||||
cfgDefCmdExpire,
|
cfgDefCmdExpire,
|
||||||
|
@ -53,7 +53,7 @@ typedef struct ConfigDefineOptionData
|
|||||||
unsigned int section:2; // Config section (e.g. global, stanza, cmd-line)
|
unsigned int section:2; // Config section (e.g. global, stanza, cmd-line)
|
||||||
bool required:1; // Is the option required?
|
bool required:1; // Is the option required?
|
||||||
bool secure:1; // Does the option need to be redacted on logs and cmd-line?
|
bool secure:1; // Does the option need to be redacted on logs and cmd-line?
|
||||||
unsigned int commandValid:17; // Bitmap for commands that the option is valid for
|
unsigned int commandValid:18; // Bitmap for commands that the option is valid for
|
||||||
|
|
||||||
const char *helpSection; // Classify the option
|
const char *helpSection; // Classify the option
|
||||||
const char *helpSummary; // Brief summary of the option
|
const char *helpSummary; // Brief summary of the option
|
||||||
|
@ -94,9 +94,9 @@ main(int argListSize, const char *argList[])
|
|||||||
cmdArchiveGetAsync();
|
cmdArchiveGetAsync();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Archive push command. Currently only implements local operations of async archive push.
|
// Archive push command.
|
||||||
// -------------------------------------------------------------------------------------------------------------------------
|
// -------------------------------------------------------------------------------------------------------------------------
|
||||||
else if (cfgCommand() == cfgCmdArchivePush && cfgOptionBool(cfgOptArchiveAsync))
|
else if (cfgCommand() == cfgCmdArchivePush)
|
||||||
{
|
{
|
||||||
cmdArchivePush();
|
cmdArchivePush();
|
||||||
}
|
}
|
||||||
|
@ -1534,11 +1534,13 @@ static const EmbeddedModule embeddedModule[] =
|
|||||||
"(\n"
|
"(\n"
|
||||||
"$strOperation,\n"
|
"$strOperation,\n"
|
||||||
"$strWalPathFile,\n"
|
"$strWalPathFile,\n"
|
||||||
|
"$bAsync,\n"
|
||||||
") =\n"
|
") =\n"
|
||||||
"logDebugParam\n"
|
"logDebugParam\n"
|
||||||
"(\n"
|
"(\n"
|
||||||
"__PACKAGE__ . '->process', \\@_,\n"
|
"__PACKAGE__ . '->process', \\@_,\n"
|
||||||
"{name => 'strWalPathFile', required => false},\n"
|
"{name => 'strWalPathFile', required => false},\n"
|
||||||
|
"{name => 'bAsync', required => true},\n"
|
||||||
");\n"
|
");\n"
|
||||||
"\n\n"
|
"\n\n"
|
||||||
"if (!isDbLocal())\n"
|
"if (!isDbLocal())\n"
|
||||||
@ -1554,7 +1556,7 @@ static const EmbeddedModule embeddedModule[] =
|
|||||||
"my $strWalPath = dirname(walPath($strWalPathFile, cfgOption(CFGOPT_PG_PATH, false), cfgCommandName(cfgCommandGet())));\n"
|
"my $strWalPath = dirname(walPath($strWalPathFile, cfgOption(CFGOPT_PG_PATH, false), cfgCommandName(cfgCommandGet())));\n"
|
||||||
"my $strWalFile = basename($strWalPathFile);\n"
|
"my $strWalFile = basename($strWalPathFile);\n"
|
||||||
"\n\n"
|
"\n\n"
|
||||||
"if (cfgOption(CFGOPT_ARCHIVE_ASYNC))\n"
|
"if ($bAsync)\n"
|
||||||
"{\n"
|
"{\n"
|
||||||
"\n"
|
"\n"
|
||||||
"require pgBackRest::Archive::Push::Async;\n"
|
"require pgBackRest::Archive::Push::Async;\n"
|
||||||
@ -10215,6 +10217,7 @@ static const EmbeddedModule embeddedModule[] =
|
|||||||
"'CFGCMD_ARCHIVE_GET',\n"
|
"'CFGCMD_ARCHIVE_GET',\n"
|
||||||
"'CFGCMD_ARCHIVE_GET_ASYNC',\n"
|
"'CFGCMD_ARCHIVE_GET_ASYNC',\n"
|
||||||
"'CFGCMD_ARCHIVE_PUSH',\n"
|
"'CFGCMD_ARCHIVE_PUSH',\n"
|
||||||
|
"'CFGCMD_ARCHIVE_PUSH_ASYNC',\n"
|
||||||
"'CFGCMD_BACKUP',\n"
|
"'CFGCMD_BACKUP',\n"
|
||||||
"'CFGCMD_CHECK',\n"
|
"'CFGCMD_CHECK',\n"
|
||||||
"'CFGCMD_EXPIRE',\n"
|
"'CFGCMD_EXPIRE',\n"
|
||||||
@ -10528,7 +10531,16 @@ static const EmbeddedModule embeddedModule[] =
|
|||||||
"require pgBackRest::Archive::Push::Push;\n"
|
"require pgBackRest::Archive::Push::Push;\n"
|
||||||
"pgBackRest::Archive::Push::Push->import();\n"
|
"pgBackRest::Archive::Push::Push->import();\n"
|
||||||
"\n"
|
"\n"
|
||||||
"new pgBackRest::Archive::Push::Push()->process($stryCommandArg[0]);\n"
|
"new pgBackRest::Archive::Push::Push()->process($stryCommandArg[0], false);\n"
|
||||||
|
"}\n"
|
||||||
|
"\n\n\n"
|
||||||
|
"elsif (cfgCommandTest(CFGCMD_ARCHIVE_PUSH_ASYNC))\n"
|
||||||
|
"{\n"
|
||||||
|
"\n"
|
||||||
|
"require pgBackRest::Archive::Push::Push;\n"
|
||||||
|
"pgBackRest::Archive::Push::Push->import();\n"
|
||||||
|
"\n"
|
||||||
|
"new pgBackRest::Archive::Push::Push()->process($stryCommandArg[0], true);\n"
|
||||||
"}\n"
|
"}\n"
|
||||||
"\n\n\n"
|
"\n\n\n"
|
||||||
"elsif (cfgCommandTest(CFGCMD_REMOTE))\n"
|
"elsif (cfgCommandTest(CFGCMD_REMOTE))\n"
|
||||||
|
@ -548,20 +548,21 @@ sub run
|
|||||||
$self->optionTestSet(CFGOPT_PG_HOST, BOGUS);
|
$self->optionTestSet(CFGOPT_PG_HOST, BOGUS);
|
||||||
$self->configTestLoad(CFGCMD_ARCHIVE_PUSH);
|
$self->configTestLoad(CFGCMD_ARCHIVE_PUSH);
|
||||||
|
|
||||||
$self->testException(sub {$oPush->process(undef)}, ERROR_HOST_INVALID, 'archive-push operation must run on db host');
|
$self->testException(sub {$oPush->process(undef, false)}, ERROR_HOST_INVALID, 'archive-push operation must run on db host');
|
||||||
|
|
||||||
#---------------------------------------------------------------------------------------------------------------------------
|
#---------------------------------------------------------------------------------------------------------------------------
|
||||||
# Reset pg-host
|
# Reset pg-host
|
||||||
$self->optionTestClear(CFGOPT_PG_HOST);
|
$self->optionTestClear(CFGOPT_PG_HOST);
|
||||||
$self->configTestLoad(CFGCMD_ARCHIVE_PUSH);
|
$self->configTestLoad(CFGCMD_ARCHIVE_PUSH);
|
||||||
|
|
||||||
$self->testException(sub {$oPush->process(undef)}, ERROR_PARAM_REQUIRED, 'WAL file to push required');
|
$self->testException(sub {$oPush->process(undef, false)}, ERROR_PARAM_REQUIRED, 'WAL file to push required');
|
||||||
|
|
||||||
#---------------------------------------------------------------------------------------------------------------------------
|
#---------------------------------------------------------------------------------------------------------------------------
|
||||||
my $strSegment = $self->walSegment($iWalTimeline, $iWalMajor, $iWalMinor++);
|
my $strSegment = $self->walSegment($iWalTimeline, $iWalMajor, $iWalMinor++);
|
||||||
$self->walGenerate($self->{strWalPath}, PG_VERSION_94, 1, $strSegment);
|
$self->walGenerate($self->{strWalPath}, PG_VERSION_94, 1, $strSegment);
|
||||||
|
|
||||||
$self->testResult(sub {$oPush->process("pg_xlog/${strSegment}")}, undef, "${strSegment} WAL pushed (with relative path)");
|
$self->testResult(
|
||||||
|
sub {$oPush->process("pg_xlog/${strSegment}", false)}, undef, "${strSegment} WAL pushed (with relative path)");
|
||||||
|
|
||||||
$self->testResult(
|
$self->testResult(
|
||||||
sub {walSegmentFind(storageRepo(), $self->{strArchiveId}, $strSegment)}, "${strSegment}-$self->{strWalHash}",
|
sub {walSegmentFind(storageRepo(), $self->{strArchiveId}, $strSegment)}, "${strSegment}-$self->{strWalHash}",
|
||||||
@ -577,7 +578,7 @@ sub run
|
|||||||
$strSegment = $self->walSegment($iWalTimeline, $iWalMajor, $iWalMinor++);
|
$strSegment = $self->walSegment($iWalTimeline, $iWalMajor, $iWalMinor++);
|
||||||
$self->walGenerate($self->{strWalPath}, PG_VERSION_94, 1, $strSegment);
|
$self->walGenerate($self->{strWalPath}, PG_VERSION_94, 1, $strSegment);
|
||||||
|
|
||||||
$self->testResult(sub {$oPush->process("$self->{strWalPath}/${strSegment}")}, undef, "${strSegment} WAL dropped");
|
$self->testResult(sub {$oPush->process("$self->{strWalPath}/${strSegment}", false)}, undef, "${strSegment} WAL dropped");
|
||||||
$self->testResult(
|
$self->testResult(
|
||||||
sub {walSegmentFind(storageRepo(), $self->{strArchiveId}, $strSegment)}, '[undef]',
|
sub {walSegmentFind(storageRepo(), $self->{strArchiveId}, $strSegment)}, '[undef]',
|
||||||
"${strSegment} WAL in archive");
|
"${strSegment} WAL in archive");
|
||||||
@ -586,7 +587,7 @@ sub run
|
|||||||
$self->optionTestSet(CFGOPT_ARCHIVE_PUSH_QUEUE_MAX, PG_WAL_SIZE_TEST * 4);
|
$self->optionTestSet(CFGOPT_ARCHIVE_PUSH_QUEUE_MAX, PG_WAL_SIZE_TEST * 4);
|
||||||
$self->configTestLoad(CFGCMD_ARCHIVE_PUSH);
|
$self->configTestLoad(CFGCMD_ARCHIVE_PUSH);
|
||||||
|
|
||||||
$self->testResult(sub {$oPush->process("$self->{strWalPath}/${strSegment}")}, undef, "${strSegment} WAL pushed");
|
$self->testResult(sub {$oPush->process("$self->{strWalPath}/${strSegment}", false)}, undef, "${strSegment} WAL pushed");
|
||||||
$self->testResult(
|
$self->testResult(
|
||||||
sub {walSegmentFind(storageRepo(), $self->{strArchiveId}, $strSegment)}, "${strSegment}-$self->{strWalHash}",
|
sub {walSegmentFind(storageRepo(), $self->{strArchiveId}, $strSegment)}, "${strSegment}-$self->{strWalHash}",
|
||||||
"${strSegment} WAL in archive");
|
"${strSegment} WAL in archive");
|
||||||
@ -605,7 +606,8 @@ sub run
|
|||||||
|
|
||||||
$strSegment = $self->walSegment($iWalTimeline, $iWalMajor, $iWalMinor++);
|
$strSegment = $self->walSegment($iWalTimeline, $iWalMajor, $iWalMinor++);
|
||||||
$self->walGenerate($self->{strWalPath}, PG_VERSION_94, 1, $strSegment);
|
$self->walGenerate($self->{strWalPath}, PG_VERSION_94, 1, $strSegment);
|
||||||
$self->testResult(sub {$oPush->process("$self->{strWalPath}/${strSegment}")}, undef, "${strSegment} WAL pushed async");
|
$self->testResult(
|
||||||
|
sub {$oPush->process("$self->{strWalPath}/${strSegment}", true)}, undef, "${strSegment} WAL pushed async");
|
||||||
|
|
||||||
$self->testResult(
|
$self->testResult(
|
||||||
sub {walSegmentFind(storageRepo(), $self->{strArchiveId}, $strSegment, 5)}, "${strSegment}-$self->{strWalHash}",
|
sub {walSegmentFind(storageRepo(), $self->{strArchiveId}, $strSegment, 5)}, "${strSegment}-$self->{strWalHash}",
|
||||||
@ -622,7 +624,7 @@ sub run
|
|||||||
$self->optionTestSet(CFGOPT_ARCHIVE_TIMEOUT, 5);
|
$self->optionTestSet(CFGOPT_ARCHIVE_TIMEOUT, 5);
|
||||||
$self->configTestLoad(CFGCMD_ARCHIVE_PUSH);
|
$self->configTestLoad(CFGCMD_ARCHIVE_PUSH);
|
||||||
|
|
||||||
$self->testResult(sub {$oPush->process("$self->{strWalPath}/${strSegment}")}, undef, 'process connect error');
|
$self->testResult(sub {$oPush->process("$self->{strWalPath}/${strSegment}", true)}, undef, 'process connect error');
|
||||||
|
|
||||||
# Check contents of error file
|
# Check contents of error file
|
||||||
my $strErrorFile = STORAGE_SPOOL_ARCHIVE_OUT . "/${strSegment}.error";
|
my $strErrorFile = STORAGE_SPOOL_ARCHIVE_OUT . "/${strSegment}.error";
|
||||||
|
@ -21,7 +21,7 @@ testRun(void)
|
|||||||
if (testBegin("cmdArchivePush()"))
|
if (testBegin("cmdArchivePush()"))
|
||||||
{
|
{
|
||||||
StringList *argList = strLstNew();
|
StringList *argList = strLstNew();
|
||||||
strLstAddZ(argList, "pgbackrest");
|
strLstAddZ(argList, "pgbackrest-bogus");
|
||||||
strLstAddZ(argList, "--archive-timeout=1");
|
strLstAddZ(argList, "--archive-timeout=1");
|
||||||
strLstAddZ(argList, "--stanza=db");
|
strLstAddZ(argList, "--stanza=db");
|
||||||
strLstAddZ(argList, "archive-push");
|
strLstAddZ(argList, "archive-push");
|
||||||
@ -33,7 +33,7 @@ testRun(void)
|
|||||||
strLstAddZ(argList, "000000010000000100000001");
|
strLstAddZ(argList, "000000010000000100000001");
|
||||||
harnessCfgLoad(strLstSize(argList), strLstPtr(argList));
|
harnessCfgLoad(strLstSize(argList), strLstPtr(argList));
|
||||||
|
|
||||||
TEST_ERROR(cmdArchivePush(), AssertError, "archive-push in C does not support synchronous mode");
|
TEST_ERROR(cmdArchivePush(), OptionRequiredError , "===PERL-EMBED-ERROR===");
|
||||||
|
|
||||||
// Make sure the process times out when there is nothing to archive
|
// Make sure the process times out when there is nothing to archive
|
||||||
// -------------------------------------------------------------------------------------------------------------------------
|
// -------------------------------------------------------------------------------------------------------------------------
|
||||||
|
Reference in New Issue
Block a user