pgBackRest 1.8 commit log

v1.07: Thread to Process Conversion and Bug Fixes

commit   : a8590c9aded9a6603eb0ed64ac1a5792f700e22e    
  
author   : David Steele <[email protected]>    
date     : Wed, 7 Sep 2016 08:29:21 -0400    
  
committer: David Steele <[email protected]>    
date     : Wed, 7 Sep 2016 08:29:21 -0400    

Click here for diff

Bug Fixes:  
  
* Fixed an issue where tablespaces were copied from the master during standby backup.  
* Fixed the check command so backup info is checked remotely and not just locally. (Fixed by Cynthia Shang.)  
* Fixed an issue where retention-archive was not automatically being set when retention-archive-type=diff, resulting in a less aggressive than intended expiration of archive. (Fixed by Cynthia Shang.)  
  
Features:  
  
* Converted Perl threads to processes to improve compatibility and performance.  
* Exclude contents of $PGDATA/pg_replslot directory so that replication slots on the master do not become part of the backup.  
* The archive-start and archive-stop settings are now filled in backup.manifest even when archive-check=n.  
* Additional warnings when archive retention settings may not have the intended effect or would allow indefinite retention. (Contributed by Cynthia Shang.)  
* Experimental support for non-exclusive backups in PostgreSQL 9.6 rc1. Changes to the control/catalog/WAL versions in subsequent release candidates may break compatibility but pgBackRest will be updated with each release to keep pace.  
  
Refactoring:  
  
* Refactor of protocol minions in preparation for the new local minion.  
* Remove obsolete thread index variable from File() module.  
* Changed temporary file names to consistently use the .pgbackrest.tmp extension even if the destination file is compressed or has an appended checksum.  
* Improve ASSERT error handling, safely check eval blocks, and convert $@ to $EVAL_ERROR.  

M README.md
M doc/resource/exe.cache
M doc/xml/release.xml
M lib/pgBackRest/Version.pm

Archive retention improvements:

commit   : d2add293c7959d8b1919520f98202f07a0c1cba0    
  
author   : Cynthia Shang <[email protected]>    
date     : Wed, 7 Sep 2016 08:07:37 -0400    
  
committer: David Steele <[email protected]>    
date     : Wed, 7 Sep 2016 08:07:37 -0400    

Click here for diff

* Fixed an issue where retention-archive was not automatically being set when retention-archive-type=diff, resulting in a less aggressive than intended expiration of archive.  
* Additional warnings when archive retention settings may not have the intended effect or would allow indefinite retention.  
* Closed #235: "Retention policy question" by adding documentation for archive retention.  
  
Contributed by Cynthia Shang.  

M bin/pgbackrest
M doc/xml/reference.xml
M doc/xml/release.xml
M doc/xml/user-guide.xml
M lib/pgBackRest/Config/Config.pm
M lib/pgBackRest/Config/ConfigHelpData.pm
M lib/pgBackRest/Expire.pm
M test/expect/backup-expire-001.log
M test/expect/backup-synthetic-001.log
M test/expect/backup-synthetic-002.log
M test/expect/backup-synthetic-003.log
M test/expect/backup-synthetic-004.log
M test/expect/backup-synthetic-005.log
M test/expect/backup-synthetic-006.log
M test/expect/backup-synthetic-007.log
M test/expect/backup-synthetic-008.log
M test/lib/pgBackRestTest/Backup/BackupTest.pm
M test/lib/pgBackRestTest/Backup/Common/ExpireCommonTest.pm
M test/lib/pgBackRestTest/Config/ConfigTest.pm

The archive-start and archive-stop settings are now filled in backup.manifest.

commit   : 0d5a1eaf9efc3e051221cc32b373139cc1a274a6    
  
author   : David Steele <[email protected]>    
date     : Wed, 7 Sep 2016 07:20:07 -0400    
  
committer: David Steele <[email protected]>    
date     : Wed, 7 Sep 2016 07:20:07 -0400    

Click here for diff

M doc/xml/release.xml
M lib/pgBackRest/Backup.pm
M lib/pgBackRest/Db.pm

Make uid/gid selection for containers dynamic.

commit   : cc9c8819eee1257b08f44eaf43597f5e97833932    
  
author   : David Steele <[email protected]>    
date     : Tue, 6 Sep 2016 14:01:39 -0400    
  
committer: David Steele <[email protected]>    
date     : Tue, 6 Sep 2016 14:01:39 -0400    

Click here for diff

M doc/xml/release.xml
M test/lib/pgBackRestTest/Common/ContainerTest.pm

Update Vagrantfile:

commit   : cedfcbd4be9be7c37d211731f1b10f5e0d50e25a    
  
author   : David Steele <[email protected]>    
date     : Tue, 6 Sep 2016 11:02:01 -0400    
  
committer: David Steele <[email protected]>    
date     : Tue, 6 Sep 2016 11:02:01 -0400    

Click here for diff

* Change box provider to bento (hoping for better stability with Docker).  
* Install texlive from Debian packages.  

M test/Vagrantfile

Safely check eval blocks and convert $@ to $EVAL_ERROR.

commit   : dd8d7812170c4312654dd12d2c742c1963653a92    
  
author   : David Steele <[email protected]>    
date     : Tue, 6 Sep 2016 09:44:50 -0400    
  
committer: David Steele <[email protected]>    
date     : Tue, 6 Sep 2016 09:44:50 -0400    

Click here for diff

M bin/pgbackrest
M doc/doc.pl
M doc/lib/BackRestDoc/Common/Doc.pm
M doc/lib/BackRestDoc/Common/DocConfig.pm
M doc/lib/BackRestDoc/Common/DocExecute.pm
M doc/lib/BackRestDoc/Common/DocManifest.pm
M doc/lib/BackRestDoc/Common/DocRender.pm
M doc/lib/BackRestDoc/Custom/DocCustomRelease.pm
M doc/lib/BackRestDoc/Html/DocHtmlBuilder.pm
M doc/lib/BackRestDoc/Html/DocHtmlElement.pm
M doc/lib/BackRestDoc/Html/DocHtmlPage.pm
M doc/lib/BackRestDoc/Html/DocHtmlSite.pm
M doc/lib/BackRestDoc/Latex/DocLatex.pm
M doc/lib/BackRestDoc/Latex/DocLatexSection.pm
M doc/release.pl
M doc/xml/release.xml
M lib/pgBackRest/Archive.pm
M lib/pgBackRest/Backup.pm
M lib/pgBackRest/Common/Exception.pm
M lib/pgBackRest/Common/Exit.pm
M lib/pgBackRest/Config/Config.pm
M lib/pgBackRest/File.pm
M lib/pgBackRest/Protocol/CommonMaster.pm
M lib/pgBackRest/Protocol/CommonMinion.pm
M lib/pgBackRest/Protocol/IO.pm
M test/expect/backup-archive-get-001.log
M test/expect/backup-archive-get-002.log
M test/expect/backup-archive-get-003.log
M test/expect/backup-archive-get-004.log
M test/expect/backup-archive-get-005.log
M test/expect/backup-archive-get-006.log
M test/expect/backup-archive-get-007.log
M test/expect/backup-archive-get-008.log
M test/expect/backup-archive-push-001.log
M test/expect/backup-archive-push-002.log
M test/expect/backup-archive-push-003.log
M test/expect/backup-archive-push-004.log
M test/expect/backup-archive-push-005.log
M test/expect/backup-archive-push-006.log
M test/expect/backup-archive-push-007.log
M test/expect/backup-archive-push-008.log
M test/expect/backup-archive-stop-001.log
M test/expect/backup-archive-stop-002.log
M test/expect/backup-archive-stop-003.log
M test/expect/backup-archive-stop-004.log
M test/expect/backup-archive-stop-005.log
M test/expect/backup-archive-stop-006.log
M test/expect/backup-synthetic-001.log
M test/expect/backup-synthetic-002.log
M test/expect/backup-synthetic-003.log
M test/expect/backup-synthetic-004.log
M test/expect/backup-synthetic-005.log
M test/expect/backup-synthetic-006.log
M test/expect/backup-synthetic-007.log
M test/expect/backup-synthetic-008.log
M test/lib/pgBackRestTest/Common/ContainerTest.pm
M test/lib/pgBackRestTest/Config/ConfigTest.pm
M test/lib/pgBackRestTest/File/FileTest.pm
M test/lint/perlcritic.policy
M test/test.pl

Converted Perl threads to processes.

commit   : a701309453a7df8f8808f6739e06e357ec0bf63f    
  
author   : David Steele <[email protected]>    
date     : Tue, 6 Sep 2016 09:35:02 -0400    
  
committer: David Steele <[email protected]>    
date     : Tue, 6 Sep 2016 09:35:02 -0400    

Click here for diff

M README.md
M bin/pgbackrest
M doc/lib/BackRestDoc/Common/DocConfig.pm
M doc/lib/BackRestDoc/Common/DocExecute.pm
M doc/xml/index.xml
M doc/xml/reference.xml
M doc/xml/release.xml
M doc/xml/test.xml
M doc/xml/user-guide.xml
M lib/pgBackRest/Archive.pm
M lib/pgBackRest/Backup.pm
M lib/pgBackRest/BackupFile.pm
A lib/pgBackRest/BackupProcess.pm
M lib/pgBackRest/Common/Exit.pm
M lib/pgBackRest/Common/Ini.pm
M lib/pgBackRest/Common/Lock.pm
M lib/pgBackRest/Common/Log.pm
M lib/pgBackRest/Common/String.pm
M lib/pgBackRest/Common/Wait.pm
M lib/pgBackRest/Config/Config.pm
M lib/pgBackRest/Config/ConfigHelpData.pm
M lib/pgBackRest/Expire.pm
M lib/pgBackRest/Manifest.pm
M lib/pgBackRest/Protocol/Common.pm
M lib/pgBackRest/Protocol/CommonMaster.pm
A lib/pgBackRest/Protocol/LocalMaster.pm
A lib/pgBackRest/Protocol/LocalMinion.pm
A lib/pgBackRest/Protocol/LocalProcess.pm
M lib/pgBackRest/Protocol/Protocol.pm
D lib/pgBackRest/Protocol/ThreadGroup.pm
M lib/pgBackRest/Restore.pm
M lib/pgBackRest/RestoreFile.pm
A lib/pgBackRest/RestoreProcess.pm
M test/README.md
M test/expect/backup-synthetic-001.log
M test/expect/backup-synthetic-002.log
M test/expect/backup-synthetic-003.log
M test/expect/backup-synthetic-004.log
M test/expect/backup-synthetic-005.log
M test/expect/backup-synthetic-006.log
M test/expect/backup-synthetic-007.log
M test/expect/backup-synthetic-008.log
M test/lib/pgBackRestTest/Backup/BackupTest.pm
M test/lib/pgBackRestTest/Backup/Common/HostBackupTest.pm
M test/lib/pgBackRestTest/Backup/Common/HostBaseTest.pm
M test/lib/pgBackRestTest/Common/ContainerTest.pm
M test/lib/pgBackRestTest/Common/DefineTest.pm
M test/lib/pgBackRestTest/Common/ExecuteTest.pm
M test/lib/pgBackRestTest/Common/ListTest.pm
M test/lib/pgBackRestTest/Common/LogTest.pm
M test/lib/pgBackRestTest/Config/ConfigTest.pm
M test/test.pl

Refactor of protocol minions in preparation for the new local minion.

commit   : 4026ad649d4383c500bd40717e2fb177d01a7692    
  
author   : David Steele <[email protected]>    
date     : Tue, 6 Sep 2016 09:15:22 -0400    
  
committer: David Steele <[email protected]>    
date     : Tue, 6 Sep 2016 09:15:22 -0400    

Click here for diff

M doc/xml/release.xml
M lib/pgBackRest/Archive.pm
M lib/pgBackRest/Common/Exception.pm
M lib/pgBackRest/Config/Config.pm
M lib/pgBackRest/Db.pm
M lib/pgBackRest/File.pm
M lib/pgBackRest/Info.pm
M lib/pgBackRest/Protocol/Common.pm
M lib/pgBackRest/Protocol/CommonMaster.pm
M lib/pgBackRest/Protocol/CommonMinion.pm
M lib/pgBackRest/Protocol/Protocol.pm
M lib/pgBackRest/Protocol/RemoteMinion.pm
M test/expect/backup-archive-get-005.log
M test/expect/backup-archive-get-006.log
M test/expect/backup-archive-get-007.log
M test/expect/backup-archive-get-008.log
M test/expect/backup-archive-push-005.log
M test/expect/backup-archive-push-006.log
M test/expect/backup-archive-push-007.log
M test/expect/backup-archive-push-008.log
M test/expect/backup-archive-stop-003.log
M test/expect/backup-archive-stop-004.log
M test/expect/backup-archive-stop-005.log
M test/expect/backup-archive-stop-006.log
M test/expect/backup-synthetic-005.log
M test/expect/backup-synthetic-006.log
M test/expect/backup-synthetic-007.log
M test/expect/backup-synthetic-008.log

Improved temp file handling for archiving.

commit   : f71073c11f413f99f35b3c253f35a0aaed34edfb    
  
author   : David Steele <[email protected]>    
date     : Sun, 4 Sep 2016 19:29:30 -0400    
  
committer: David Steele <[email protected]>    
date     : Sun, 4 Sep 2016 19:29:30 -0400    

Click here for diff

M doc/xml/release.xml
M lib/pgBackRest/Archive.pm
M lib/pgBackRest/File.pm
M test/expect/backup-archive-push-002.log
M test/expect/backup-archive-push-004.log
M test/expect/backup-archive-push-006.log
M test/expect/backup-archive-push-008.log
M test/expect/backup-archive-stop-001.log
M test/expect/backup-archive-stop-002.log
M test/expect/backup-archive-stop-003.log
M test/expect/backup-archive-stop-004.log
M test/expect/backup-archive-stop-005.log
M test/expect/backup-archive-stop-006.log
M test/lib/pgBackRestTest/Backup/BackupTest.pm

Suppress TOC for unsupported versions of pgBackRest.

commit   : 56ee666e69302b291ec5cc7d04caa25c651d7bfb    
  
author   : David Steele <[email protected]>    
date     : Sun, 4 Sep 2016 09:27:56 -0400    
  
committer: David Steele <[email protected]>    
date     : Sun, 4 Sep 2016 09:27:56 -0400    

Click here for diff

The intent is to tidy the releases page and nobody should care much about the old, unsupported releases,  

M doc/lib/BackRestDoc/Custom/DocCustomRelease.pm
M doc/lib/BackRestDoc/Html/DocHtmlPage.pm
M doc/xml/release.xml

Improve ASSERT error handling.

commit   : 8f61473955e212b605088cfe387c625b40c9863c    
  
author   : David Steele <[email protected]>    
date     : Sun, 4 Sep 2016 09:25:20 -0400    
  
committer: David Steele <[email protected]>    
date     : Sun, 4 Sep 2016 09:25:20 -0400    

Click here for diff

M bin/pgbackrest
M doc/xml/release.xml
M lib/pgBackRest/Common/Exit.pm
M lib/pgBackRest/Common/Log.pm
M test/expect/backup-archive-stop-001.log
M test/expect/backup-archive-stop-002.log
M test/expect/backup-archive-stop-003.log
M test/expect/backup-archive-stop-004.log
M test/expect/backup-archive-stop-005.log
M test/expect/backup-archive-stop-006.log

File module improvements.

commit   : f986e6ae33a5c87da7a8a5f5e5a11b8d4637a172    
  
author   : David Steele <[email protected]>    
date     : Sun, 4 Sep 2016 09:22:53 -0400    
  
committer: David Steele <[email protected]>    
date     : Sun, 4 Sep 2016 09:22:53 -0400    

Click here for diff

* Remove obsolete thread index variable from File() module.  
* Changed temporary file names to consistently use .pgbackrest.tmp.  

M doc/xml/release.xml
M lib/pgBackRest/File.pm
M test/expect/backup-archive-get-001.log
M test/expect/backup-archive-get-002.log
M test/expect/backup-archive-get-003.log
M test/expect/backup-archive-get-004.log
M test/expect/backup-archive-get-005.log
M test/expect/backup-archive-get-006.log
M test/expect/backup-archive-get-007.log
M test/expect/backup-archive-get-008.log
M test/expect/backup-archive-push-001.log
M test/expect/backup-archive-push-002.log
M test/expect/backup-archive-push-003.log
M test/expect/backup-archive-push-004.log
M test/expect/backup-archive-push-005.log
M test/expect/backup-archive-push-006.log
M test/expect/backup-archive-push-007.log
M test/expect/backup-archive-push-008.log
M test/expect/backup-archive-stop-001.log
M test/expect/backup-archive-stop-002.log
M test/expect/backup-archive-stop-003.log
M test/expect/backup-archive-stop-004.log
M test/expect/backup-archive-stop-005.log
M test/expect/backup-archive-stop-006.log
M test/expect/backup-synthetic-001.log
M test/expect/backup-synthetic-002.log
M test/expect/backup-synthetic-003.log
M test/expect/backup-synthetic-004.log
M test/expect/backup-synthetic-005.log
M test/expect/backup-synthetic-006.log
M test/expect/backup-synthetic-007.log
M test/expect/backup-synthetic-008.log
M test/lib/pgBackRestTest/File/FileTest.pm

Fixed a issue where tablespaces were copied from the master during standby backup.

commit   : bcdb5cdac80372536539c46e12b3d1a5d244f5a9    
  
author   : David Steele <[email protected]>    
date     : Sun, 4 Sep 2016 09:19:44 -0400    
  
committer: David Steele <[email protected]>    
date     : Sun, 4 Sep 2016 09:19:44 -0400    

Click here for diff

M doc/xml/release.xml
M lib/pgBackRest/Backup.pm
M lib/pgBackRest/Manifest.pm
M test/expect/backup-synthetic-001.log
M test/expect/backup-synthetic-002.log
M test/expect/backup-synthetic-003.log
M test/expect/backup-synthetic-004.log
M test/expect/backup-synthetic-005.log
M test/expect/backup-synthetic-006.log
M test/expect/backup-synthetic-007.log
M test/expect/backup-synthetic-008.log
M test/lib/pgBackRestTest/Backup/BackupTest.pm
M test/lib/pgBackRestTest/Backup/Common/HostBackupTest.pm
M test/lib/pgBackRestTest/Backup/Common/HostDbSyntheticTest.pm

Exclude contents of $PGDATA/pg_replslot directory.

commit   : 2feaaf225e2200fd92ad7d12a1281080cbb5603f    
  
author   : David Steele <[email protected]>    
date     : Sun, 4 Sep 2016 09:13:13 -0400    
  
committer: David Steele <[email protected]>    
date     : Sun, 4 Sep 2016 09:13:13 -0400    

Click here for diff

M doc/xml/release.xml
M lib/pgBackRest/Manifest.pm
M test/expect/backup-synthetic-001.log
M test/lib/pgBackRestTest/Backup/BackupTest.pm

Experimental support for non-exclusive backups in PostgreSQL 9.6 rc1.

commit   : 316da4421ec0780963ab8a32d2fee141ff50122d    
  
author   : David Steele <[email protected]>    
date     : Sat, 3 Sep 2016 18:34:38 -0400    
  
committer: David Steele <[email protected]>    
date     : Sat, 3 Sep 2016 18:34:38 -0400    

Click here for diff

M doc/xml/release.xml
M lib/pgBackRest/Db.pm

Closed #250: Fixed the check command so backup info is checked remotely and not just locally.

commit   : 634f5c6829ce0d4ece466ac2d4c29215b13d6f89    
  
author   : Cynthia Shang <[email protected]>    
date     : Mon, 29 Aug 2016 14:09:37 -0400    
  
committer: David Steele <[email protected]>    
date     : Mon, 29 Aug 2016 14:09:37 -0400    

Click here for diff

Fixed by Cynthia Shang.  

M doc/xml/release.xml
M lib/pgBackRest/Archive.pm
M lib/pgBackRest/Protocol/RemoteMinion.pm
M lib/pgBackRest/Version.pm
M test/lib/pgBackRestTest/Backup/BackupTest.pm

commit   : f6c24039e1d360b9be9b39ed77488212167570b2    
  
author   : David Steele <[email protected]>    
date     : Mon, 29 Aug 2016 09:43:22 -0400    
  
committer: David Steele <[email protected]>    
date     : Mon, 29 Aug 2016 09:43:22 -0400    

Click here for diff

M doc/lib/BackRestDoc/Common/DocConfig.pm
M doc/xml/release.xml