1
0
mirror of https://github.com/pgbackrest/pgbackrest.git synced 2024-12-12 10:04:14 +02:00

v2.42: Bug Fixes

Bug Fixes:

* Fix memory leak in file bundle backup/restore. (Reviewed by John Morris, Oscar. Reported by Oscar.)
* Fix protocol error on short read of remote file. (Reviewed by Stephen Frost.)

Improvements:

* Do not store references for zero-length files when bundling. (Reviewed by Stefan Fercot.)
* Use more generic descriptions for pg_start_backup()/pg_stop_backup(). (Reviewed by Greg Sabino Mullane, David Christensen. Suggested by Greg Sabino Mullane.)

Test Suite Improvements:

* Update test.pl --psql-bin option to match command-line help. (Contributed by Koshi Shibagaki. Reviewed by David Steele.)
This commit is contained in:
David Steele 2022-11-22 10:20:59 +08:00
parent 3ad588443b
commit 70b75532bf
11 changed files with 701 additions and 499 deletions

View File

@ -268,35 +268,35 @@ pgbackrest/test/test.pl --vm=none --vm-out --module=common --test=wait
P00 INFO: P1-T1/1 - vm=none, module=common, test=wait
2022-09-19 16:10:16.785 P00 INFO: test command begin 2.41: [common/wait] --log-level=info --repo-path=/home/vagrant/test/repo --test-path=/home/vagrant/test --vm=none --vm-id=0
2022-09-19 16:10:19.212 P00 INFO: test command end: completed successfully (2428ms)
2022-11-19 04:59:31.320 P00 INFO: test command begin 2.42: [common/wait] --log-level=info --repo-path=/home/vagrant/test/repo --test-path=/home/vagrant/test --vm=none --vm-id=0
2022-11-19 04:59:33.800 P00 INFO: test command end: completed successfully (2480ms)
run 1 - waitNew(), waitMore, and waitFree()
000.010s L0018 expect AssertError: assertion 'waitTime <= 999999000' failed
000.009s L0018 expect AssertError: assertion 'waitTime <= 999999000' failed
run 1/1 ------------- L0021 0ms wait
000.050s 000.040s L0025 new wait
000.056s 000.006s L0026 check remaining time
000.058s 000.002s L0027 check wait time
000.059s 000.001s L0028 check sleep time
000.059s 000.000s L0029 check sleep prev time
000.060s 000.001s L0030 no wait more
000.065s 000.005s L0033 new wait = 0.2 sec
000.066s 000.001s L0034 check remaining time
000.067s 000.001s L0035 check wait time
000.068s 000.001s L0036 check sleep time
000.069s 000.001s L0037 check sleep prev time
000.050s 000.041s L0025 new wait
000.057s 000.007s L0026 check remaining time
000.059s 000.002s L0027 check wait time
000.059s 000.000s L0028 check sleep time
000.060s 000.001s L0029 check sleep prev time
000.061s 000.001s L0030 no wait more
000.066s 000.005s L0033 new wait = 0.2 sec
000.067s 000.001s L0034 check remaining time
000.068s 000.001s L0035 check wait time
000.069s 000.001s L0036 check sleep time
000.069s 000.000s L0037 check sleep prev time
000.070s 000.001s L0038 check begin time
000.268s 000.198s L0044 lower range check
000.268s 000.000s L0045 upper range check
000.269s 000.001s L0047 free wait
000.269s 000.001s L0045 upper range check
000.269s 000.000s L0047 free wait
000.271s 000.002s L0052 new wait = 1.1 sec
000.272s 000.001s L0053 check wait time
000.273s 000.001s L0054 check sleep time
000.274s 000.001s L0055 check sleep prev time
000.275s 000.001s L0056 check begin time
001.373s 001.098s L0062 lower range check
001.374s 000.001s L0063 upper range check
001.375s 000.001s L0065 free wait
000.273s 000.002s L0053 check wait time
000.274s 000.001s L0054 check sleep time
000.275s 000.001s L0055 check sleep prev time
000.276s 000.001s L0056 check begin time
001.374s 001.098s L0062 lower range check
001.375s 000.001s L0063 upper range check
001.376s 000.001s L0065 free wait
TESTS COMPLETED SUCCESSFULLY
@ -341,7 +341,7 @@ pgbackrest/test/test.pl --vm-build --vm=u20
--- output ---
P00 INFO: test begin on x86_64 - log level info
P00 INFO: Using cached pgbackrest/test:u20-base-20220726A image (f5b22e94c4bac5589e92977a3edd52507f8fa150) ...
P00 INFO: Building pgbackrest/test:u20-base image (5f3dc325901f5274f9e21399ef6d3facd606d85a) ...
P00 INFO: Building pgbackrest/test:u20-test image ...
P00 INFO: Build Complete
```

View File

@ -4,7 +4,7 @@
pgBackRest aims to be a reliable, easy-to-use backup and restore solution that can seamlessly scale up to the largest databases and workloads by utilizing algorithms that are optimized for database-specific requirements.
pgBackRest [v2.41](https://github.com/pgbackrest/pgbackrest/releases/tag/release/2.41) is the current stable release. Release notes are on the [Releases](http://www.pgbackrest.org/release.html) page.
pgBackRest [v2.42](https://github.com/pgbackrest/pgbackrest/releases/tag/release/2.42) is the current stable release. Release notes are on the [Releases](http://www.pgbackrest.org/release.html) page.
Please find us on [GitHub](https://github.com/pgbackrest/pgbackrest) and give us a star if you like pgBackRest!

File diff suppressed because it is too large Load Diff

View File

@ -1,4 +1,207 @@
[
{
"commit": "3ad588443b452e04f3abcc107e825dc47e078103",
"date": "2022-11-14 12:47:27 +0800",
"subject": "Update test.pl --psql-bin option to match command-line help.",
"body": "The option to specify the path to psql was shown in the command-line help as --psql-bin but the option was actually named --pgsql-bin.\r\n\r\nRename to match the help so they are consistent."
},
{
"commit": "58b3c91babc6af9e003e5ef09bf99becf8a6f827",
"date": "2022-11-10 10:28:49 +0930",
"subject": "Add raw mode to CipherBlock to save space.",
"body": "The magic in the header is only required so that command-line openssl will recognize the file as being encrypted. In cases where the encrypted data cannot be read with the command-line tool it makes sense to omit the header magic to save some space.\n\nUnfortunately this cannot be enabled for file bundling because it would break backward compatibility. However, it should be possible to enable it for the combination of bundling and block incremental."
},
{
"commit": "c9db7bc274211820030c4ab6ab8c70c1b1896254",
"date": "2022-11-06 16:12:23 +0930",
"subject": "Update cipherBlockNew() to allow optional parameters.",
"body": "This simplifies calls a bit since digest is never passed and allows for new optional parameters."
},
{
"commit": "221db610d2a054ed00ad27377663941abfb9fb98",
"date": "2022-10-18 18:02:17 +1300",
"subject": "Shorten names in real/all integration test matrix.",
"body": "This should allow one or two more parameters to be added without going to a new line, which keeps the matrix easier to read."
},
{
"commit": "5fceee88a9439460bf24082f275ec2e695cc6bf6",
"date": "2022-10-18 17:39:59 +1300",
"subject": "Add backupFileRepoPathP().",
"body": "The path for a backup file in the repository was being generated in four different places, so move the logic to a function."
},
{
"commit": "fee38c2c7cc3ae318bf0d3b50fe23c22900c2311",
"date": "2022-10-18 16:11:35 +1300",
"subject": "Pass filters to remote storage as a handler array.",
"body": "The prior code required coverage in the storage/remote module for all filters that could be used remotely.\n\nNow the filter handlers are set at runtime so any filter list can be used with a remote. This is more flexible and makes coverage testing easier. It also resolves a test dependency.\n\nMove the command/remote unit test near the end so it will have access to all filters without using depends."
},
{
"commit": "1730ef4ac3d88137bd218e6128b0107a8bf2c121",
"date": "2022-10-18 11:33:19 +1300",
"subject": "Add noTruncate flag to storageNewWriteP().",
"body": "This flag skips truncation when opening a file for write on drivers that support it, currently Posix and CIFS. This is convenient for cases where the file needs to be manipulated directly using the file descriptor. Using the file descriptor is not ideal and additional functionality should be added to the storage interface, but for now at least this avoids code duplication, especially on close which updates owners, the timestamp, syncs, etc.\r\n\r\nThe remote driver forbids no truncate because a file descriptor is never available for a remote storage write object.\r\n\r\nUpdate two instances in the current code which benefit from this new functionality, but the primary reason for the change is to support more complex restore deltas in the upcoming block incremental feature."
},
{
"commit": "7967c750d83466d030081e9deb1d70a1ba240271",
"date": "2022-10-18 11:09:00 +1300",
"subject": "Fix protocol error on short read of remote file.",
"body": "If a remote file read was stopped before the read was complete or if an error occurred in the middle of the read then the protocol would end up in a bad state and produce this error:\r\n\r\nProtocolError: client state is 'data-get' but expected 'idle'\r\n\r\nPrevent this by reading the rest of the file on close() or free() to leave the protocol in an idle state for the next command.\r\n\r\nThis was a possible issue for bundling because the amount to read is known in advance and therefore eof may not be reached. However, I was only able to reproduce this issue with unreleased code.\r\n\r\nOn error this issue would cause the original error to be lost. The process may still fail with this fix (if the error comes from another source) but hopefully we'll get better information about the original error."
},
{
"commit": "ddd966cadc30440a81100144204d4084a0f2ac3a",
"date": "2022-10-18 09:59:15 +1300",
"subject": "Use more generic descriptions for pg_start_backup()/pg_stop_backup().",
"body": "The names were changed in PostgreSQL 15, so update the code and docs to make the naming more generic where needed to avoid using a version-specific name in the logs and documentation."
},
{
"commit": "65be4c64a984d51306db4c6febe3a124c3230f51",
"date": "2022-10-16 09:58:35 +1300",
"subject": "Finalize catalog number for PostgreSQL 15 release."
},
{
"commit": "ea162e821634919b7c839e866b99bf82010dbacc",
"date": "2022-10-14 12:54:43 +1300",
"subject": "Move storageReadRemoteOpen() in storage/remote/read module.",
"body": "This will make an upcoming important fix easier to review."
},
{
"commit": "909be412f8ad0d87f23ce2a2dbca94c3e0732f9f",
"date": "2022-10-14 12:08:40 +1300",
"subject": "Swap command/backup and command/restore unit tests.",
"body": "Logically restore belongs after backup and in a future commit restore will have a dependency on some backup objects."
},
{
"commit": "8f67fb6db2645c2dae24429555ead66147ba176f",
"date": "2022-10-14 10:59:07 +1300",
"subject": "Enable FreeBSD 12/13 builds on Cirrus CI.",
"body": "The builds were disabled in bb11539a and 164548f2 due to an error that seems to have been caused by a bad package dependency for rsync. In any case adding this fixed it:\n\npkg update && pkg upgrade -y libiconv"
},
{
"commit": "e7e106f781be01027d4829b258902549eb36eb7b",
"date": "2022-10-11 10:52:34 -1100",
"subject": "Use read-only storage to calculate checksum in restoreFile().",
"body": "Writable storage is not required here so use read-only storage instead."
},
{
"commit": "164548f2b744db5e6c7a3089176f6df2a638d105",
"date": "2022-10-11 10:20:44 -1100",
"subject": "Disable FreeBSD 12 builds on Cirrus CI.",
"body": "Build have begin failing with this error:\n\nld-elf.so.1: /usr/local/bin/rsync: Undefined symbol \"locale_charset\"\n\nThere does not appear to be a new version so hopefully this is a transient error (hoping the same for FreeBSD 13, see bb11539a). Disable for now to free the build pipeline."
},
{
"commit": "352cbf1d5738a720292b5067051a05efc2b9a8ac",
"date": "2022-10-06 10:15:38 -1000",
"subject": "Update ManifestFile booleans to bit fields."
},
{
"commit": "46a0af353139f3238dbe96671e99ea0456028940",
"date": "2022-10-05 18:05:56 -1000",
"subject": "Return binary as result from CryptoHash filter.",
"body": "The prior result was hex-encoded, which is not optimal. This was legacy from the interface with Perl and then the JSON protocol. The new binary protocol natively supports binary so it makes sense to use it and convert to hex where needed.\n\nA number of these hex conversions can now be removed but that will need to be handled in another commit."
},
{
"commit": "5602f179a177a8513b96c762590829c012c28175",
"date": "2022-10-05 17:01:35 -1000",
"subject": "Add varint-128 encode/decode to IoRead/IoWrite.",
"body": "This makes it more efficient to read/write (especially read) varint-128 to/from IO.\r\n\r\nUpdate the Pack type to take advantage of the more efficient read and remove some duplicate code."
},
{
"commit": "102ce5dee47e8d9a8d2eeaf2b2cc2bac105914ef",
"date": "2022-10-05 16:28:31 -1000",
"subject": "Add persistent reference list to manifest.",
"body": "The reference list was previously built at load time from whichever references existed in the file list. This was sufficient since the list was for informational purposes only.\r\n\r\nThe block incremental feature will require a reference list that contains all prior backups, even those that are not explicitly referenced from the manifest. Therefore it makes sense to build and persist a manifest list rather than building it at load time.\r\n\r\nThis list can still be used for informational purposes, though it needs to be sorted since the list it sill built for older manifest versions and may not be in sorted order.\r\n\r\nAdd strLstFindIdx() to find references in the list."
},
{
"commit": "c647bcb50954f623d29104cdb8a1457ed8e94579",
"date": "2022-10-05 13:14:15 -1000",
"subject": "Add manifest flags for file processing during backup.",
"body": "The prior method was to check a combination of fields to determine if a file needed to be copied, delta'd, or resumed. This was complicated and ultimately imposed a limitation on the number of operations that could be performed.\r\n\r\nIntroduce copy, delta, and resume flags in the manifest to make it clearer which operations need to be performed and to reduce complex and duplicated logic.\r\n\r\nThis also allows zero-length bundled files to be completed during manifest build rather than later on during backup processing."
},
{
"commit": "bb11539a37e830ed2a836633218b7184a7a57f2d",
"date": "2022-10-05 12:20:02 -1000",
"subject": "Disable FreeBSD 13 builds on Cirrus CI.",
"body": "Build have begin failing with this error:\n\nld-elf.so.1: /usr/local/bin/rsync: Undefined symbol \"locale_charset\"\n\nThere does not appear to be a new version so hopefully this is a transient error. Disable for now to free the build pipeline."
},
{
"commit": "1ea6a4142e47e2e0b56911ad1f028dfcddc5fd64",
"date": "2022-10-04 14:19:12 -1000",
"subject": "Improve manifest file updates.",
"body": "The prior manifestFileUpdate() function was pretty difficult to use since all the parameters had to specified. Instead, pass a ManifestFile struct that has all members set as needed.\r\n\r\nWhen new struct members are added the manifestFileUpdate() call sites will still need to be reviewed, but this should make the process of adding members a bit simpler."
},
{
"commit": "f981fb45d9931e597afec764e13b1a53d8365d25",
"date": "2022-10-04 13:22:31 -1000",
"subject": "Do not store references for zero-length files when bundling.",
"body": "This appears to have been an oversight in 34d6495. Storing the reference is not really correct since the file is not stored in a prior backup. It also uses more space.\r\n\r\nThere is no real harm in storing the reference, since it is always ignored on restore, but the code is simpler if the zero-length files can be dealt with during the manifest and don't need additional handling later on. This is also an important part of some upcoming optimizations."
},
{
"commit": "f0acc195c0527495857f1afa8b24bdf2a4f477b5",
"date": "2022-10-03 10:02:44 -1000",
"subject": "Fix assert message and add a clarifying comment."
},
{
"commit": "6e26860c2648f6e23ad99bb4d38ecb1bfc45dd0c",
"date": "2022-10-02 17:48:43 -1000",
"subject": "Do not log bundle info when a file is delta matched from a prior backup.",
"body": "It is possible to log the bundle info correctly but the information is useless with the backup reference, which does not appear until later. For now just omit the bundle info so we are not logging something incorrect."
},
{
"commit": "4722ad87a78f1085ef8d823b7460d191477e768e",
"date": "2022-10-02 17:41:31 -1000",
"subject": "Add test for differential file bundles to the command/backup unit.",
"body": "This test exposes a small logging issue. The bundle information for the matched delta on PG_VERSION is not correct. This issue will be fixed in the next commit.\n\nThe information stored in the manifest *is* correct so this bug is essentially cosmetic."
},
{
"commit": "ac99201c0ebde616279214e600e49fdf506f7469",
"date": "2022-10-02 17:32:48 -1000",
"subject": "Add bufferSize to cvtUInt64FromVarInt128() to further limit reads.",
"body": "The current call site, manifestFileUnpack(), does not know the total buffer size but the buffer has always been maintained in memory so there should be no corruption. However, there are upcoming use cases where the buffer will be read from IO, the buffer size will be known, and additional sanity checking on buffer overruns will be valuable.\n\nAlso rename params to align better with cvtUInt64ToVarInt128()."
},
{
"commit": "01b81f9d374701eb489dd1888bcba25fb5d6df84",
"date": "2022-10-01 15:26:44 -1000",
"subject": "Move link creation to storage interface.",
"body": "Direct link creation via Posix functions has been moved to the Posix driver.\r\n\r\nThis change allows adding SFTP softlink creation in the SFTP driver using the standard interface."
},
{
"commit": "2a4137ed2eeaa769508301056226d6f86a67fd06",
"date": "2022-09-25 16:15:23 -0800",
"subject": "Add zero-length chunked content test to common/ioHttp unit.",
"body": "It seems wasteful to chunk content when there is nothing to send but make sure we handle it gracefully just in case a server decides to do it."
},
{
"commit": "64b64b614c8272d2a87ffcde2fa7f27cf7eee365",
"date": "2022-09-25 12:30:30 -0800",
"subject": "Fix comment typo."
},
{
"commit": "f1e8e49fa933dd0f5dfab446f511ac010eb4d236",
"date": "2022-09-23 14:00:58 -0700",
"subject": "Use large error/log buffers in test harness.",
"body": "Ninja produces quite a bit of output so error messages are often truncated by the default error/log buffers. Use large buffers in the test harness to capture the error even when there is a lot of output.\n\nNinja has introduced a --quiet option, but it is currently too new to be in any of our test distributions."
},
{
"commit": "cd8db7d9e53e041ad6fb31f2f015541c1d24abc2",
"date": "2022-09-22 22:42:01 -0700",
"subject": "Fix memory leak in file bundle backup/restore.",
"body": "When converting restoreFile() to support file bundling in 34d64957 there were some I/O objects that were only freed at the end of the function that should have been freed at the end of each loop. Wrap the loops in temp mem contexts to fix this.\r\n\r\nDo the same to backupFile() since it would have a similar leak when resuming a backup. Since file bundles cannot be resumed the leak would not be as severe, but still seems worth doing to protect against future leaks."
},
{
"commit": "d50a4442e45efa8d1a16c9bf68f2337367c42835",
"date": "2022-09-22 10:35:41 -0700",
"subject": "Add missed release note for b05d31f5."
},
{
"commit": "9483844f7fc9a5eac64a87d3c80cfea3fd592e4e",
"date": "2022-09-19 10:25:38 -0700",
"subject": "Update config.guess and config.sub to latest versions."
},
{
"commit": "ab4209ebcbe23b5c3b759ba67f0e9bdc6cb66280",
"date": "2022-09-19 10:17:25 -0700",
"subject": "Begin v2.42 development."
},
{
"commit": "6b355806cc288e6f473254412337596287291798",
"date": "2022-09-19 10:08:10 -0700",

View File

@ -65,14 +65,14 @@
<table-cell>command/archive/push</table-cell>
<table-cell>12/12 (100.0%)</table-cell>
<table-cell>132/132 (100.0%)</table-cell>
<table-cell>406/406 (100.0%)</table-cell>
<table-cell>407/407 (100.0%)</table-cell>
</table-row>
<table-row>
<table-cell>command/backup</table-cell>
<table-cell>36/36 (100.0%)</table-cell>
<table-cell>538/538 (100.0%)</table-cell>
<table-cell>1265/1265 (100.0%)</table-cell>
<table-cell>37/37 (100.0%)</table-cell>
<table-cell>534/534 (100.0%)</table-cell>
<table-cell>1298/1298 (100.0%)</table-cell>
</table-row>
<table-row>
@ -86,7 +86,7 @@
<table-cell>command/control</table-cell>
<table-cell>4/4 (100.0%)</table-cell>
<table-cell>32/32 (100.0%)</table-cell>
<table-cell>59/59 (100.0%)</table-cell>
<table-cell>60/60 (100.0%)</table-cell>
</table-row>
<table-row>
@ -121,7 +121,7 @@
<table-cell>command/remote</table-cell>
<table-cell>1/1 (100.0%)</table-cell>
<table-cell>6/6 (100.0%)</table-cell>
<table-cell>20/20 (100.0%)</table-cell>
<table-cell>21/21 (100.0%)</table-cell>
</table-row>
<table-row>
@ -135,7 +135,7 @@
<table-cell>command/restore</table-cell>
<table-cell>28/28 (100.0%)</table-cell>
<table-cell>596/596 (100.0%)</table-cell>
<table-cell>1161/1161 (100.0%)</table-cell>
<table-cell>1164/1164 (100.0%)</table-cell>
</table-row>
<table-row>
@ -204,15 +204,15 @@
<table-row>
<table-cell>common/crypto</table-cell>
<table-cell>28/28 (100.0%)</table-cell>
<table-cell>80/80 (100.0%)</table-cell>
<table-cell>491/491 (100.0%)</table-cell>
<table-cell>88/88 (100.0%)</table-cell>
<table-cell>497/497 (100.0%)</table-cell>
</table-row>
<table-row>
<table-cell>common/io</table-cell>
<table-cell>53/53 (100.0%)</table-cell>
<table-cell>160/160 (100.0%)</table-cell>
<table-cell>658/658 (100.0%)</table-cell>
<table-cell>55/55 (100.0%)</table-cell>
<table-cell>172/172 (100.0%)</table-cell>
<table-cell>692/692 (100.0%)</table-cell>
</table-row>
<table-row>
@ -245,9 +245,9 @@
<table-row>
<table-cell>common/type</table-cell>
<table-cell>329/329 (100.0%)</table-cell>
<table-cell>852/852 (100.0%)</table-cell>
<table-cell>4237/4237 (100.0%)</table-cell>
<table-cell>330/330 (100.0%)</table-cell>
<table-cell>854/854 (100.0%)</table-cell>
<table-cell>4245/4245 (100.0%)</table-cell>
</table-row>
<table-row>
@ -267,8 +267,8 @@
<table-row>
<table-cell>info</table-cell>
<table-cell>93/93 (100.0%)</table-cell>
<table-cell>846/846 (100.0%)</table-cell>
<table-cell>2366/2366 (100.0%)</table-cell>
<table-cell>864/864 (100.0%)</table-cell>
<table-cell>2368/2368 (100.0%)</table-cell>
</table-row>
<table-row>
@ -294,16 +294,16 @@
<table-row>
<table-cell>storage</table-cell>
<table-cell>53/53 (100.0%)</table-cell>
<table-cell>54/54 (100.0%)</table-cell>
<table-cell>228/228 (100.0%)</table-cell>
<table-cell>775/775 (100.0%)</table-cell>
<table-cell>796/796 (100.0%)</table-cell>
</table-row>
<table-row>
<table-cell>storage/azure</table-cell>
<table-cell>25/25 (100.0%)</table-cell>
<table-cell>110/110 (100.0%)</table-cell>
<table-cell>531/531 (100.0%)</table-cell>
<table-cell>532/532 (100.0%)</table-cell>
</table-row>
<table-row>
@ -317,33 +317,33 @@
<table-cell>storage/gcs</table-cell>
<table-cell>32/32 (100.0%)</table-cell>
<table-cell>116/116 (100.0%)</table-cell>
<table-cell>655/655 (100.0%)</table-cell>
<table-cell>656/656 (100.0%)</table-cell>
</table-row>
<table-row>
<table-cell>storage/posix</table-cell>
<table-cell>25/25 (100.0%)</table-cell>
<table-cell>155/156 (99.36%)</table-cell>
<table-cell>463/463 (100.0%)</table-cell>
<table-cell>26/26 (100.0%)</table-cell>
<table-cell>159/160 (99.38%)</table-cell>
<table-cell>483/483 (100.0%)</table-cell>
</table-row>
<table-row>
<table-cell>storage/remote</table-cell>
<table-cell>30/30 (100.0%)</table-cell>
<table-cell>106/106 (100.0%)</table-cell>
<table-cell>735/735 (100.0%)</table-cell>
<table-cell>35/35 (100.0%)</table-cell>
<table-cell>120/120 (100.0%)</table-cell>
<table-cell>810/810 (100.0%)</table-cell>
</table-row>
<table-row>
<table-cell>storage/s3</table-cell>
<table-cell>30/30 (100.0%)</table-cell>
<table-cell>142/142 (100.0%)</table-cell>
<table-cell>723/723 (100.0%)</table-cell>
<table-cell>724/724 (100.0%)</table-cell>
</table-row>
<table-row>
<table-cell>TOTAL</table-cell>
<table-cell>1532/1532 (100.0%)</table-cell>
<table-cell>8991/8992 (99.99%)</table-cell>
<table-cell>27845/27845 (100.0%)</table-cell>
<table-cell>1543/1543 (100.0%)</table-cell>
<table-cell>9045/9046 (99.99%)</table-cell>
<table-cell>28053/28053 (100.0%)</table-cell>
</table-row>

View File

@ -14,7 +14,7 @@
</intro>
<release-list>
<release date="XXXX-XX-XX" version="2.42dev" title="UNDER DEVELOPMENT">
<release date="2022-11-22" version="2.42" title="Bug Fixes">
<release-core-list>
<release-bug-list>
<release-item>

View File

@ -4,7 +4,7 @@
project(
'pgbackrest',
['c'],
version: '2.42dev',
version: '2.42',
license: 'MIT',
meson_version: '>=0.45',
default_options: [

View File

@ -1,7 +1,7 @@
# Initialize configuration
# ----------------------------------------------------------------------------------------------------------------------------------
AC_PREREQ([2.71])
AC_INIT([pgBackRest], [2.42dev])
AC_INIT([pgBackRest], [2.42])
AC_CONFIG_SRCDIR([version.h])
AC_CONFIG_AUX_DIR(build)

20
src/configure vendored
View File

@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.71 for pgBackRest 2.42dev.
# Generated by GNU Autoconf 2.71 for pgBackRest 2.42.
#
#
# Copyright (C) 1992-1996, 1998-2017, 2020-2021 Free Software Foundation,
@ -607,8 +607,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='pgBackRest'
PACKAGE_TARNAME='pgbackrest'
PACKAGE_VERSION='2.42dev'
PACKAGE_STRING='pgBackRest 2.42dev'
PACKAGE_VERSION='2.42'
PACKAGE_STRING='pgBackRest 2.42'
PACKAGE_BUGREPORT=''
PACKAGE_URL=''
@ -1272,7 +1272,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
\`configure' configures pgBackRest 2.42dev to adapt to many kinds of systems.
\`configure' configures pgBackRest 2.42 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@ -1319,7 +1319,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
short | recursive ) echo "Configuration of pgBackRest 2.42dev:";;
short | recursive ) echo "Configuration of pgBackRest 2.42:";;
esac
cat <<\_ACEOF
@ -1414,7 +1414,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
pgBackRest configure 2.42dev
pgBackRest configure 2.42
generated by GNU Autoconf 2.71
Copyright (C) 2021 Free Software Foundation, Inc.
@ -1570,7 +1570,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by pgBackRest $as_me 2.42dev, which was
It was created by pgBackRest $as_me 2.42, which was
generated by GNU Autoconf 2.71. Invocation command line was
$ $0$ac_configure_args_raw
@ -4831,7 +4831,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
This file was extended by pgBackRest $as_me 2.42dev, which was
This file was extended by pgBackRest $as_me 2.42, which was
generated by GNU Autoconf 2.71. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@ -4895,7 +4895,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config='$ac_cs_config_escaped'
ac_cs_version="\\
pgBackRest config.status 2.42dev
pgBackRest config.status 2.42
configured by $0, generated by GNU Autoconf 2.71,
with options \\"\$ac_cs_config\\"
@ -5599,4 +5599,4 @@ if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
printf "%s\n" "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
fi
# Generated from src/build/configure.ac sha1 6102334a43421b66e0773384100b5d304b29f2b8
# Generated from src/build/configure.ac sha1 1835c82b5de54594068d88f6bf5dfaa87f50d012

View File

@ -33,6 +33,6 @@ repository will be invalid unless migration functions are written.
/***********************************************************************************************************************************
Software version
***********************************************************************************************************************************/
#define PROJECT_VERSION "2.42dev"
#define PROJECT_VERSION "2.42"
#endif

View File

@ -3367,7 +3367,7 @@ testRun(void)
TEST_RESULT_VOID(testCmdBackup(), "backup");
TEST_RESULT_LOG(
"P00 INFO: last backup label = 20191030-014640F, version = 2.42dev\n"
"P00 INFO: last backup label = 20191030-014640F, version = " PROJECT_VERSION "\n"
"P00 WARN: diff backup cannot alter 'checksum-page' option to 'false', reset to 'true' from 20191030-014640F\n"
"P00 INFO: execute non-exclusive backup start: backup begins after the next regular checkpoint completes\n"
"P00 INFO: backup start archive = 0000000105DBBF8000000000, lsn = 5dbbf80/0\n"