You've already forked pgbackrest
mirror of
https://github.com/pgbackrest/pgbackrest.git
synced 2025-06-23 00:07:44 +02:00
Storage and IO layer refactor:
Refactor storage layer to allow for new repository filesystems using drivers. (Reviewed by Cynthia Shang.) Refactor IO layer to allow for new compression formats, checksum types, and other capabilities using filters. (Reviewed by Cynthia Shang.)
This commit is contained in:
@ -19,13 +19,11 @@ use pgBackRest::Backup::Info;
|
||||
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::InfoCommon;
|
||||
use pgBackRest::Manifest;
|
||||
use pgBackRest::Protocol::Common::Common;
|
||||
use pgBackRest::Protocol::Helper;
|
||||
use pgBackRest::Protocol::Storage::Helper;
|
||||
|
||||
use pgBackRestTest::Env::HostEnvTest;
|
||||
use pgBackRestTest::Common::ExecuteTest;
|
||||
@ -39,11 +37,7 @@ sub initModule
|
||||
{
|
||||
my $self = shift;
|
||||
|
||||
$self->{strDbPath} = $self->testPath() . '/db';
|
||||
$self->{strRepoPath} = $self->testPath() . '/repo';
|
||||
$self->{strArchivePath} = "$self->{strRepoPath}/archive/" . $self->stanza();
|
||||
$self->{strBackupPath} = "$self->{strRepoPath}/backup/" . $self->stanza();
|
||||
$self->{strSpoolPath} = "$self->{strArchivePath}/out";
|
||||
}
|
||||
|
||||
####################################################################################################################################
|
||||
@ -53,19 +47,17 @@ sub initTest
|
||||
{
|
||||
my $self = shift;
|
||||
|
||||
# Create archive info path
|
||||
filePathCreate($self->{strArchivePath}, undef, true, true);
|
||||
# Load options
|
||||
my $oOption = {};
|
||||
$self->optionSetTest($oOption, OPTION_STANZA, $self->stanza());
|
||||
$self->optionSetTest($oOption, OPTION_REPO_PATH, $self->testPath() . '/repo');
|
||||
logDisable(); $self->configLoadExpect(dclone($oOption), CMD_ARCHIVE_PUSH); logEnable();
|
||||
|
||||
# Create the local file object
|
||||
$self->{oStorage} = storageRepo();
|
||||
|
||||
# Create backup info path
|
||||
filePathCreate($self->{strBackupPath}, undef, true, true);
|
||||
|
||||
# Create pg_control path
|
||||
filePathCreate(($self->{strDbPath} . '/' . DB_PATH_GLOBAL), undef, false, true);
|
||||
|
||||
# Copy a pg_control file into the pg_control path
|
||||
executeTest(
|
||||
'cp ' . $self->dataPath() . '/backup.pg_control_' . WAL_VERSION_94 . '.bin ' . $self->{strDbPath} . '/' .
|
||||
DB_FILE_PGCONTROL);
|
||||
$self->{oStorage}->pathCreate(STORAGE_REPO_BACKUP, {bCreateParent => true});
|
||||
}
|
||||
|
||||
####################################################################################################################################
|
||||
@ -79,7 +71,8 @@ sub run
|
||||
################################################################################################################################
|
||||
if ($self->begin("BackupInfo::confirmDb()"))
|
||||
{
|
||||
my $oBackupInfo = new pgBackRest::Backup::Info($self->{strBackupPath}, false, false);
|
||||
my $oBackupInfo = new pgBackRest::Backup::Info($self->{oStorage}->pathGet(STORAGE_REPO_BACKUP), false, false,
|
||||
{bIgnoreMissing => true});
|
||||
$oBackupInfo->create(PG_VERSION_93, WAL_VERSION_93_SYS_ID, '937', '201306121', true);
|
||||
|
||||
my $strBackupLabel = "20170403-175647F";
|
||||
|
Reference in New Issue
Block a user