mirror of
https://github.com/pgbackrest/pgbackrest.git
synced 2025-01-18 04:58:51 +02:00
Fix reference list when backup.info is reconstructed in expire command.
Adding a manifest to backup.info was migrated to C in 4e4d1f41 but deduplication of the references was missed leading to a reference for every file being added to backup.info. Since the backup command is still using the Perl version of reconstruct this issue will not express unless 1) there is a backup missing from backup.info and 2) the expire command is run directly instead of running after backup as usual. This unlikely combination of events means this is probably not a problem in the field.
This commit is contained in:
parent
686b6f91da
commit
50eb062e0e
@ -13,6 +13,15 @@
|
||||
|
||||
<release-list>
|
||||
<release date="XXXX-XX-XX" version="2.20dev" title="UNDER DEVELOPMENT">
|
||||
<release-core-list>
|
||||
<release-bug-list>
|
||||
<release-item>
|
||||
<p>Fix reference list when <file>backup.info</file> is reconstructed in <cmd>expire</cmd> command.</p>
|
||||
|
||||
<p>Since the <cmd>backup</cmd> command is still using the <proper>Perl</proper> version of reconstruct this issue will not express unless <b>1)</b> there is a backup missing from <file>backup.info</file> and <b>2)</b> the <cmd>expire</cmd> command is run directly instead of running after <cmd>backup</cmd> as usual. This unlikely combination of events means this is probably not a problem in the field.</p>
|
||||
</release-item>
|
||||
</release-bug-list>
|
||||
</release-core-list>
|
||||
</release>
|
||||
|
||||
<release date="2019-11-12" version="2.19" title="C Migrations and Bug Fixes">
|
||||
|
@ -386,7 +386,7 @@ infoBackupDataAdd(const InfoBackup *this, const Manifest *manifest)
|
||||
|
||||
// If a reference to a file exists, then it is in a previous backup and the delta calculation was already done
|
||||
if (file->reference != NULL)
|
||||
strLstAdd(referenceList, file->reference);
|
||||
strLstAddIfMissing(referenceList, file->reference);
|
||||
else
|
||||
{
|
||||
backupSizeDelta += file->size;
|
||||
|
@ -385,6 +385,8 @@ testRun(void)
|
||||
"pg_data/postgresql.conf={\"checksum\":\"6721d92c9fcdf4248acff1f9a1377127d9064807\",\"master\":true,\"size\":4457"
|
||||
",\"timestamp\":1565282114}\n"
|
||||
"pg_data/special={\"master\":true,\"mode\":\"0640\",\"size\":0,\"timestamp\":1565282120,\"user\":false}\n"
|
||||
"pg_data/dupref={\"master\":true,\"mode\":\"0640\",\"reference\":\"20190818-084502F\",\"size\":0"
|
||||
",\"timestamp\":1565282120,\"user\":false}\n"
|
||||
TEST_MANIFEST_FILE_DEFAULT
|
||||
"\n"
|
||||
"[target:link]\n"
|
||||
|
Loading…
x
Reference in New Issue
Block a user