pgBackRest 1.20 commit log

v1.20: Critical 8.38.4 Bug Fix

  
commit   : 33d769e14786098b6fa02e666c624531dc7d5bea    
  
author   : David Steele <david@pgmasters.net>    
date     : Tue, 27 Jun 2017 22:42:31 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Tue, 27 Jun 2017 22:42:31 -0400    

Click here for diff

  
Bug Fixes:  
  
* Fixed an issue that prevented tablespaces from being backed up on PostgreSQL ≤ 8.4.  
* Fixed missing flag in C library build that resulted in a mismatched binary on 32-bit systems. (Reported by Adrian Vondendriesch.)  
  
Features:  
  
* Add s3-repo-ca-path and s3-repo-ca-file options to accommodate systems where CAs are not automatically found by IO::Socket::SSL, i.e. RHEL7, or to load custom CAs. (Suggested by Scott Frazer.)  
  
Refactoring:  
  
* Harden protocol handshake to handle race conditions.  
* Fixed misleading error message when a file was opened for write in a missing directory.  
* Change log level of hardlink logging to detail.  
* Cast size in S3 manifest to integer.  
* Rename Archive modules to remove redundancy.  
* Improve S3 error reporting.  
* Minor optimizations to package loads and ordering for archive-get and archive-push commands.  
  

Remove mount and user from host cache-key because it can vary by system.

  
commit   : 884413b251935aa7c1f82758a34c37664c200b82    
  
author   : David Steele <david@pgmasters.net>    
date     : Tue, 27 Jun 2017 22:27:48 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Tue, 27 Jun 2017 22:27:48 -0400    

Click here for diff

  
  

Add Debian 9 to test suite.

  
commit   : 7759a94fa2ac0af8ef037c466808685b091c2cc2    
  
author   : David Steele <david@pgmasters.net>    
date     : Tue, 27 Jun 2017 18:29:48 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Tue, 27 Jun 2017 18:29:48 -0400    

Click here for diff

  
  

Add performance module and basic performance test for archive-push.

  
commit   : 9e9286ee205e7202bed7fc0d688e43949c3a687c    
  
author   : David Steele <david@pgmasters.net>    
date     : Tue, 27 Jun 2017 18:00:39 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Tue, 27 Jun 2017 18:00:39 -0400    

Click here for diff

  
  

Minor optimizations to package loads and ordering for archive-get and archive-push commands.

  
commit   : 9e248a66279eab87c18040917f5bdcd94075e6c2    
  
author   : David Steele <david@pgmasters.net>    
date     : Tue, 27 Jun 2017 17:54:30 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Tue, 27 Jun 2017 17:54:30 -0400    

Click here for diff

  
  

Fixed misleading error message when a file was opened for write in a missing directory.

  
commit   : f3b62d2d671592881f5e646b100604020fa52e70    
  
author   : David Steele <david@pgmasters.net>    
date     : Tue, 27 Jun 2017 17:07:12 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Tue, 27 Jun 2017 17:07:12 -0400    

Click here for diff

  
  

Fixed an issue that prevented tablespaces from being backed up on PostgreSQL ≤ 8.4.

  
commit   : 2310e423e98259838826ccc8093e43668fab061a    
  
author   : David Steele <david@pgmasters.net>    
date     : Tue, 27 Jun 2017 16:47:40 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Tue, 27 Jun 2017 16:47:40 -0400    

Click here for diff

  
The integration tests that were supposed to prevent this regression did not work as intended.  They verified the contents of a table in the (supposedly) restored tablespace, deleted the table, and then deleted the tablespace.  All of this was deemed sufficient to prove that the tablespace had been restored correctly and was valid.  
  
However, PostgreSQL will happily recreate a tablespace on the basis of a single full-page write, at least in the affected versions.  Since writes to the test table were replayed from WAL with each recovery, all the tests passed even though the tablespace was missing after the restore.  
  
The tests have been updated to include direct comparisons against the file system and a new table that is not replayed after a restore because it is created before the backup and never modified again.  
  
Versions ≥ 9.0 were not affected due to numerous synthetic integration tests that verify backups and restores file by file.  
  

Revert removal of Ubuntu 12.04 and PostgreSQL 8.3.

  
commit   : fdabf33604cdc5f253187d559b3d4be52c2d843d    
  
author   : David Steele <david@pgmasters.net>    
date     : Tue, 27 Jun 2017 15:58:02 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Tue, 27 Jun 2017 15:58:02 -0400    

Click here for diff

  
  

Automatically check that all supported PostgreSQL versions are being tested on a single default VM.

  
commit   : 001cff9eb990cf246df42c7d06f5e377da313299    
  
author   : David Steele <david@pgmasters.net>    
date     : Tue, 27 Jun 2017 15:48:34 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Tue, 27 Jun 2017 15:48:34 -0400    

Click here for diff

  
  

Add documentation builds to CI.

  
commit   : 7a1385cc2716de93b7f0388ea2017dfa1a8734a4    
  
author   : David Steele <david@pgmasters.net>    
date     : Sat, 24 Jun 2017 18:04:02 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Sat, 24 Jun 2017 18:04:02 -0400    

Click here for diff

  
  

Container build improvements:

  
commit   : 7a9b1f69937f5866ab0bc888d700527fda460d47    
  
author   : David Steele <david@pgmasters.net>    
date     : Sat, 24 Jun 2017 10:59:00 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Sat, 24 Jun 2017 10:59:00 -0400    

Click here for diff

  
* More optimized container suite that greatly improves build time.  
* Added static Debian packages for Devel::Cover to reduce build time.  
* Add deprecated state for containers. Deprecated containers may only be used to build packages.  
* Remove Debian 8 from CI because it does not provide additional coverage over Ubuntu 14.04 and Ubuntu 16.04.  
  

Update CentOS 6 documentation to build on PostgreSQL 9.5.

  
commit   : 53184a7b30c7b3000a4be8af90c9419b22fae3e2    
  
author   : David Steele <david@pgmasters.net>    
date     : Fri, 23 Jun 2017 10:30:22 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Fri, 23 Jun 2017 10:30:22 -0400    

Click here for diff

  
  

Improve S3 server implementation in documentation.

  
commit   : 3d224ad8fa54f007032a5a2c6077c004c4d7c395    
  
author   : David Steele <david@pgmasters.net>    
date     : Fri, 23 Jun 2017 10:10:48 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Fri, 23 Jun 2017 10:10:48 -0400    

Click here for diff

  
  

Remove exhaustive version list from Stable Releases TOC.

  
commit   : eb4325fa9ac8b6e3da6344d561a861651a4b23f9    
  
author   : David Steele <david@pgmasters.net>    
date     : Thu, 22 Jun 2017 19:04:52 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Thu, 22 Jun 2017 19:04:52 -0400    

Click here for diff

  
  

Consolidate archive-get test into new archive test.

  
commit   : a10a22127d025367655037c1ca9fee0dde248e3c    
  
author   : David Steele <david@pgmasters.net>    
date     : Thu, 22 Jun 2017 18:51:39 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Thu, 22 Jun 2017 18:51:39 -0400    

Click here for diff

  
  

Add s3-repo-ca-path and s3-repo-ca-file options.

  
commit   : 918c1c6f490d3097c46e27fa0226c3fa3b08ec9b    
  
author   : David Steele <david@pgmasters.net>    
date     : Thu, 22 Jun 2017 18:22:49 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Thu, 22 Jun 2017 18:22:49 -0400    

Click here for diff

  
The options accommodate systems where CAs are not automatically found by IO::Socket::SSL, i.e. RHEL7, or to load custom CAs.  
  
Suggested by Scott Frazer.  
  

Use old trusty image until new image works with RHEL6.

  
commit   : 6327799c9ae828a56f7f8686d3e35da2441a6e15    
  
author   : David Steele <david@pgmasters.net>    
date     : Thu, 22 Jun 2017 18:13:59 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Thu, 22 Jun 2017 18:13:59 -0400    

Click here for diff

  
  

Balance database versions between VMs to minimize test duration.

  
commit   : a1a5d18aa436d50f3dff4e845bad51855168071b    
  
author   : David Steele <david@pgmasters.net>    
date     : Thu, 22 Jun 2017 14:44:21 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Thu, 22 Jun 2017 14:44:21 -0400    

Click here for diff

  
  

Fixed missing flag in C library build.

  
commit   : d3054d919b6efc831c9a5a596496e0be80309bc7    
  
author   : David Steele <david@pgmasters.net>    
date     : Thu, 22 Jun 2017 12:57:10 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Thu, 22 Jun 2017 12:57:10 -0400    

Click here for diff

  
The missing flag resulted in a mismatched binary on 32-bit systems.  
  
Reported by Adrian Vondendriesch.  
  

Remove patch directory before Debian package builds.

  
commit   : f8849d735937c16211b0cc905de22088ae467ec6    
  
author   : David Steele <david@pgmasters.net>    
date     : Thu, 22 Jun 2017 12:37:21 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Thu, 22 Jun 2017 12:37:21 -0400    

Click here for diff

  
Patches should be merged into master before trying a new build after a release with patches.  
  

Improve S3 error reporting.

  
commit   : f596702c5badb5dbd3b15b6c4ee0e54444ab6e8c    
  
author   : David Steele <david@pgmasters.net>    
date     : Wed, 21 Jun 2017 20:46:49 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Wed, 21 Jun 2017 20:46:49 -0400    

Click here for diff

  
  

Remove process-max option.

  
commit   : 8b9965abcb30421157e11ecc5969bcffbbed93a5    
  
author   : David Steele <david@pgmasters.net>    
date     : Wed, 21 Jun 2017 19:21:16 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Wed, 21 Jun 2017 19:21:16 -0400    

Click here for diff

  
Parallelism is now tested in a more targeted manner and the high level option is no longer needed.  
  

Reduce process redundancy in mock tests.

  
commit   : 234869338913ab411baa33b58f28e8d460c74335    
  
author   : David Steele <david@pgmasters.net>    
date     : Wed, 21 Jun 2017 18:47:25 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Wed, 21 Jun 2017 18:47:25 -0400    

Click here for diff

  
  

Remove support for PostgreSQL 8.3.

  
commit   : cc0e3f843e0bf3c4982af6423d07f527cc8fd617    
  
author   : David Steele <david@pgmasters.net>    
date     : Wed, 21 Jun 2017 17:24:36 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Wed, 21 Jun 2017 17:24:36 -0400    

Click here for diff

  
  

Remove Ubuntu 12.04 from CI now that it is EOL (it can still be run manually).

  
commit   : 73274fc608d7aa4c93af645a85bcbceb3f276847    
  
author   : David Steele <david@pgmasters.net>    
date     : Wed, 21 Jun 2017 17:02:01 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Wed, 21 Jun 2017 17:02:01 -0400    

Click here for diff

  
  

Install sudo in base containers rather than on demand.

  
commit   : c69baa2de1ed4d00a87f90634c347e730f3babc3    
  
author   : David Steele <david@pgmasters.net>    
date     : Wed, 21 Jun 2017 16:51:41 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Wed, 21 Jun 2017 16:51:41 -0400    

Click here for diff

  
  

Eliminate redundancy in real tests.

  
commit   : 64ec7eb49077421f28dbd3cf889e68fc226a4f3d    
  
author   : David Steele <david@pgmasters.net>    
date     : Wed, 21 Jun 2017 16:07:13 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Wed, 21 Jun 2017 16:07:13 -0400    

Click here for diff

  
  

Rename archive-push unit test.

  
commit   : edada218660a67bd4e87e8450e2491eb2bb47a5c    
  
author   : David Steele <david@crunchydata.com>    
date     : Wed, 21 Jun 2017 08:45:58 -0400    
  
committer: David Steele <david@crunchydata.com>    
date     : Wed, 21 Jun 2017 08:45:58 -0400    

Click here for diff

  
This is part of the archive consolidation but is committed separately so that git will follow the rename.  
  

Consolidate archive-push tests into new archive test.

  
commit   : 2337be863690c73fc2e141191a3167d959c35263    
  
author   : David Steele <david@crunchydata.com>    
date     : Wed, 21 Jun 2017 08:38:53 -0400    
  
committer: David Steele <david@crunchydata.com>    
date     : Wed, 21 Jun 2017 08:38:53 -0400    

Click here for diff

  
  

Rename Archive modules to remove redundancy.

  
commit   : 11ee528e0e11a849612c67dcb297c35c29995c11    
  
author   : David Steele <david@crunchydata.com>    
date     : Wed, 21 Jun 2017 08:02:21 -0400    
  
committer: David Steele <david@crunchydata.com>    
date     : Wed, 21 Jun 2017 08:02:21 -0400    

Click here for diff

  
  

Split full module into mock and real to allow better test combinations and save time in CI.

  
commit   : 692b1e274adb9f1f23e3d29d127af521a53a27e9    
  
author   : David Steele <david@pgmasters.net>    
date     : Mon, 19 Jun 2017 18:55:00 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Mon, 19 Jun 2017 18:55:00 -0400    

Click here for diff

  
  

Full/Synthetic test refactor.

  
commit   : f6d4457d58b3f752dadd14c9e341ff86910f72b3    
  
author   : David Steele <david@pgmasters.net>    
date     : Thu, 15 Jun 2017 15:32:10 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Thu, 15 Jun 2017 15:32:10 -0400    

Click here for diff

  
* Combine hardlink and non/compressed in synthetic tests to reduce test time and improve coverage.  
* Change log level of hardlink logging to detail.  
* Cast size in S3 manifest to integer.  
  

Fix timeouts in ExecuteTest to speed multi-process testing.

  
commit   : 269ae4556d00da463d43ef95aaa461821e77f4f3    
  
author   : David Steele <david@pgmasters.net>    
date     : Thu, 15 Jun 2017 15:20:02 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Thu, 15 Jun 2017 15:20:02 -0400    

Click here for diff

  
  

Harden protocol handshake to handle race conditions.

  
commit   : 6e29f616b347b66c62c36adf019a7a4d42e4bdac    
  
author   : David Steele <david@pgmasters.net>    
date     : Thu, 15 Jun 2017 15:12:28 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Thu, 15 Jun 2017 15:12:28 -0400    

Click here for diff