pgBackRest 1.1 commit log

v1.01: Enhanced Info, Selective Restore, and 9.6 Support

commit   : b710c016302d8d29c502aab5688197bf9a664131    
  
author   : David Steele <[email protected]>    
date     : Tue, 17 May 2016 01:04:01 -0400    
  
committer: David Steele <[email protected]>    
date     : Tue, 17 May 2016 01:04:01 -0400    

Click here for diff

* Enhanced text output of `info` command to include timestamps, sizes, and the reference list for all backups. Contributed by Cynthia Shang.  
  
* Allow selective restore of databases from a cluster backup. This feature can result in major space and time savings when only specific databases are restored. Unrestored databases will not be accessible but must be manually dropped before they will be removed from the shared catalogue.  
  
* Experimental support for non-exclusive backups in PostgreSQL 9.6 beta1. Changes to the control/catalog/WAL versions in subsequent betas may break compatibility but pgBackRest will be updated with each release to keep pace.  

M CHANGELOG.md
M README.md
M doc/xml/change-log.xml
M lib/pgBackRest/Version.pm

Support for non-exclusive backups in PostgreSQL 9.6.

commit   : 0451d3afddfd6af2b6d32c2aba898e13f4cd170a    
  
author   : David Steele <[email protected]>    
date     : Mon, 16 May 2016 17:59:26 -0400    
  
committer: David Steele <[email protected]>    
date     : Mon, 16 May 2016 17:59:26 -0400    

Click here for diff

M CHANGELOG.md
M doc/xml/change-log.xml
M lib/pgBackRest/Archive.pm
M lib/pgBackRest/Backup.pm
M lib/pgBackRest/Db.pm
M lib/pgBackRest/Manifest.pm
M test/lib/pgBackRestTest/BackupTest.pm
M test/lib/pgBackRestTest/Common/VmTest.pm
M test/lib/pgBackRestTest/Docker/ContainerTest.pm

Added SEO and sharing features to the website.

commit   : 28c5e54b09c5428c53f43a8e6b9b2c2ce727ad09    
  
author   : Cynthia Shang <[email protected]>    
date     : Mon, 16 May 2016 17:01:48 -0400    
  
committer: David Steele <[email protected]>    
date     : Mon, 16 May 2016 17:01:48 -0400    

Click here for diff

Descriptions wordsmithed (for better or worse) by committer.  

M README.md
M doc/doc.pl
M doc/lib/BackRestDoc/Common/DocConfig.pm
M doc/lib/BackRestDoc/Html/DocHtmlBuilder.pm
M doc/lib/BackRestDoc/Html/DocHtmlPage.pm
M doc/lib/BackRestDoc/Html/DocHtmlSite.pm
M doc/manifest.xml
M doc/resource/html/default.css
A doc/resource/html/favicon.png
A doc/resource/logo.png
M doc/xml/backlog.xml
M doc/xml/dtd/doc.dtd
M doc/xml/index.xml
M doc/xml/reference.xml
M doc/xml/test.xml
M doc/xml/user-guide.xml

Added vim to test virtual machine.

commit   : 48eecc2c04d59f74755d7f4db2b73da8e9e29ce6    
  
author   : Cynthia Shang <[email protected]>    
date     : Mon, 16 May 2016 16:49:54 -0400    
  
committer: David Steele <[email protected]>    
date     : Mon, 16 May 2016 16:49:54 -0400    

Click here for diff

M test/Vagrantfile

Add Manifest->addFile().

commit   : 9b5a27f6578b7041d72f8527e71c35aa60c0e8ab    
  
author   : David Steele <[email protected]>    
date     : Sat, 14 May 2016 10:39:56 -0400    
  
committer: David Steele <[email protected]>    
date     : Sat, 14 May 2016 10:39:56 -0400    

Click here for diff

Some files need to be added to the manifest after the initial build.  This is currently done in only one place but usage will expand in the future so the functionality has been encapsulated in addFile().  

M lib/pgBackRest/Backup.pm
M lib/pgBackRest/Manifest.pm

Make the initial capital for hints consistent.

commit   : 77b01e980fc82d81585531bd688d8a32bed759d5    
  
author   : David Steele <[email protected]>    
date     : Sat, 14 May 2016 10:36:35 -0400    
  
committer: David Steele <[email protected]>    
date     : Sat, 14 May 2016 10:36:35 -0400    

Click here for diff

Some hints started with a capital letter and others did not. Make them all lower case for consistency.  

M lib/pgBackRest/Archive.pm
M lib/pgBackRest/ArchiveInfo.pm
M lib/pgBackRest/Backup.pm
M lib/pgBackRest/BackupInfo.pm
M lib/pgBackRest/Config/Config.pm
M lib/pgBackRest/Db.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-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/ConfigTest.pm

Refactor database version identification for archive and backup commands.

commit   : 512d006346a06ef2eaf7af7ac2863a2c1a62f3de    
  
author   : David Steele <[email protected]>    
date     : Sat, 14 May 2016 10:33:12 -0400    
  
committer: David Steele <[email protected]>    
date     : Sat, 14 May 2016 10:33:12 -0400    

Click here for diff

Added database version constants and changed version identification code to use hash tables instead of if-else.  Propagated the db version constants to the rest of the code and in passing fixed some path/filename constants.  
  
Added new regression tests to check that specific files are never copied.  

M lib/pgBackRest/Archive.pm
M lib/pgBackRest/Backup.pm
M lib/pgBackRest/Db.pm
M lib/pgBackRest/Manifest.pm
M lib/pgBackRest/Restore.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/BackupCommonTest.pm
M test/lib/pgBackRestTest/BackupTest.pm
M test/lib/pgBackRestTest/Common/VmTest.pm
M test/lib/pgBackRestTest/ExpireCommonTest.pm
M test/test.pl

Fix null and linefeed handling in Db->executeSql().

commit   : 4d9920cc48d871035a9a601095c6700510dd5388    
  
author   : David Steele <[email protected]>    
date     : Sat, 14 May 2016 10:29:35 -0400    
  
committer: David Steele <[email protected]>    
date     : Sat, 14 May 2016 10:29:35 -0400    

Click here for diff

The join() used was not able to handle nulls and was replaced by a loop.  An injudicious trim was removed when the source of extra linefeeds was determined to be an additional loop execution that was not handled correctly.  

M lib/pgBackRest/Db.pm

Allow selective restore of databases from a cluster backup.

commit   : 0c320e7df77a63e3bbebf43dc931b5884531a772    
  
author   : David Steele <[email protected]>    
date     : Wed, 11 May 2016 09:21:39 -0400    
  
committer: David Steele <[email protected]>    
date     : Wed, 11 May 2016 09:21:39 -0400    

Click here for diff

This feature can result in major space and time savings when only specific databases are restored. Unrestored databases will not be accessible but must be manually dropped before they will be removed from the shared catalogue.  

M CHANGELOG.md
M doc/xml/backlog.xml
M doc/xml/change-log.xml
M doc/xml/reference.xml
M doc/xml/user-guide.xml
M lib/pgBackRest/Backup.pm
M lib/pgBackRest/Common/Exception.pm
M lib/pgBackRest/Config/Config.pm
M lib/pgBackRest/Config/ConfigHelpData.pm
M lib/pgBackRest/Db.pm
M lib/pgBackRest/FileCommon.pm
M lib/pgBackRest/Manifest.pm
M lib/pgBackRest/Restore.pm
M lib/pgBackRest/RestoreFile.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/BackupCommonTest.pm
M test/lib/pgBackRestTest/BackupTest.pm

Added `--db-version=minimal` option as default.

commit   : e430f0a05439ff851d3c4fa8b5a19cd1c743b945    
  
author   : David Steele <[email protected]>    
date     : Wed, 11 May 2016 08:59:34 -0400    
  
committer: David Steele <[email protected]>    
date     : Wed, 11 May 2016 08:59:34 -0400    

Click here for diff

This change assigns each version of PostgreSQL to a specific OS version for testing to minimize the number of tests being run.  In general, older versions of PostgreSQL are assigned to older OS versions.  
  
The old behavior can be enabled with `--db-version=all`.  

M test/test.pl

Test directories are now located on the host VM rather than in the Docker container.

commit   : a6a19e3735f5edfa449fe351372b9d4be625d03e    
  
author   : David Steele <[email protected]>    
date     : Tue, 10 May 2016 18:12:37 -0400    
  
committer: David Steele <[email protected]>    
date     : Tue, 10 May 2016 18:12:37 -0400    

Click here for diff

This change allows for easier testing since all files are local on the host VM and can be easily accessed without using `docker exec`.  In addition, this change is required to allow multiple Docker containers per test case which is coming soon.  

M test/lib/pgBackRestTest/Common/LogTest.pm
M test/lib/pgBackRestTest/CommonTest.pm
M test/lib/pgBackRestTest/Docker/ContainerTest.pm
M test/lib/pgBackRestTest/FileTest.pm
M test/test.pl

Enhanced text output of info command to include timestamps, sizes, and the reference list for all backups.

commit   : 60b901948af90126700685b5424f332a490d1ad1    
  
author   : Cynthia Shang <[email protected]>    
date     : Fri, 6 May 2016 10:25:46 -0400    
  
committer: David Steele <[email protected]>    
date     : Fri, 6 May 2016 10:25:46 -0400    

Click here for diff

M CHANGELOG.md
M doc/xml/change-log.xml
M doc/xml/user-guide.xml
M lib/pgBackRest/Info.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/BackupTest.pm
M test/lib/pgBackRestTest/Common/LogTest.pm

Added trim() to process id read from lock file.

commit   : 7b64843221277d4afb7a6a2c8ac4222faf7c551b    
  
author   : David Steele <[email protected]>    
date     : Fri, 6 May 2016 09:37:01 -0400    
  
committer: David Steele <[email protected]>    
date     : Fri, 6 May 2016 09:37:01 -0400    

Click here for diff

The prior way worked fine but added extraneous linefeeds to the log output.  

M lib/pgBackRest/Common/Lock.pm
M test/expect/backup-archive-push-002.log
M test/expect/backup-archive-push-006.log
M test/expect/backup-synthetic-001.log
M test/expect/backup-synthetic-005.log

Next development cycle.

commit   : c477d6f8998f9e8fa8d7015b1c850e1332ab00cc    
  
author   : David Steele <[email protected]>    
date     : Thu, 5 May 2016 18:13:50 -0400    
  
committer: David Steele <[email protected]>    
date     : Thu, 5 May 2016 18:13:50 -0400    

Click here for diff

M CHANGELOG.md
M doc/xml/change-log.xml
M lib/pgBackRest/Version.pm

Add usage documentation for test.pl.

commit   : 6cd1c42ddc19f2511f159ea1ccdcc5469f728594    
  
author   : Cynthia Shang <[email protected]>    
date     : Tue, 3 May 2016 16:28:20 -0400    
  
committer: David Steele <[email protected]>    
date     : Tue, 3 May 2016 16:28:20 -0400    

Click here for diff

M doc/doc.pl

User Guide clarifications.

commit   : 7b030c5173b6d67c72b3efe54b3542ae3d694432    
  
author   : Cynthia Shang <[email protected]>    
date     : Tue, 3 May 2016 16:12:44 -0400    
  
committer: David Steele <[email protected]>    
date     : Tue, 3 May 2016 16:12:44 -0400    

Click here for diff

M doc/xml/user-guide.xml

Fixed typos in user guide.

commit   : afc8a76ee9ed26738f8b0777a14e5084e9087d20    
  
author   : Cynthia Shang <[email protected]>    
date     : Mon, 25 Apr 2016 16:33:08 -0400    
  
committer: David Steele <[email protected]>    
date     : Mon, 25 Apr 2016 16:33:08 -0400    

Click here for diff

M doc/xml/user-guide.xml

Added current stable release to documentation.

commit   : 226d266d087b1d686e2171aa6f20ab216ef63e97    
  
author   : David Steele <[email protected]>    
date     : Sun, 17 Apr 2016 11:43:33 -0400    
  
committer: David Steele <[email protected]>    
date     : Sun, 17 Apr 2016 11:43:33 -0400    

Click here for diff

M README.md
M doc/xml/index.xml

Added feature backlog.

commit   : 0d34c34cea1d8cca005e659e03c1520792b5c6a1    
  
author   : David Steele <[email protected]>    
date     : Sun, 17 Apr 2016 11:27:19 -0400    
  
committer: David Steele <[email protected]>    
date     : Sun, 17 Apr 2016 11:27:19 -0400    

Click here for diff

This backlog is intended to hold long-lived feature requests that clutter up the issues area on Github.  

M README.md
M doc/lib/BackRestDoc/Html/DocHtmlPage.pm
M doc/manifest.xml
A doc/xml/backlog.xml
M doc/xml/index.xml

Minor wording change: problems => challenges.

commit   : 7bdfa7839a1fa260b857bcde9a7e91414d7196e6    
  
author   : David Steele <[email protected]>    
date     : Sun, 17 Apr 2016 09:32:03 -0400    
  
committer: David Steele <[email protected]>    
date     : Sun, 17 Apr 2016 09:32:03 -0400    

Click here for diff

M README.md
M doc/xml/index.xml

Expanded feature bullet points into a new section with detailed explanations.

commit   : 7bd9b28ff4e5c296ff5c76b0259b40fe90c58b54    
  
author   : David Steele <[email protected]>    
date     : Sun, 17 Apr 2016 08:23:09 -0400    
  
committer: David Steele <[email protected]>    
date     : Sun, 17 Apr 2016 08:23:09 -0400    

Click here for diff

Copy editing by John Harvey (@crunchyjohn), Jason O'Donnell (@Dwaligon), and Stephen Frost (@sfrost).  

M README.md
M doc/xml/index.xml

Close #172: Unable to unpack Int64 when running on 32-bit OS

commit   : ed20c2eda3790b6a327f05a1c08761cdec38f8eb    
  
author   : David Steele <[email protected]>    
date     : Sat, 16 Apr 2016 16:38:44 -0400    
  
committer: David Steele <[email protected]>    
date     : Sat, 16 Apr 2016 16:38:44 -0400    

Click here for diff

Added a note to documentation that only 64-bit distributions are supported.  It seems unlikely that anybody would be running a production server on anything else these days so we'll wait for a field report before taking further action.  

M doc/xml/user-guide.xml

README.md is now rendered by new Markdown code.

commit   : dee3e86ff8444689f427147e9199070b8bb46ab3    
  
author   : David Steele <[email protected]>    
date     : Sat, 16 Apr 2016 11:55:23 -0400    
  
committer: David Steele <[email protected]>    
date     : Sat, 16 Apr 2016 11:55:23 -0400    

Click here for diff

M CHANGELOG.md
M README.md
M doc/doc.pl
M doc/lib/BackRestDoc/Common/DocRender.pm
M doc/lib/BackRestDoc/Markdown/DocMarkdownRender.pm
M doc/manifest.xml
M doc/xml/index.xml
M test/README.md

Update URLs for new Github org.

commit   : ad8ad11e4f555fb5b50c963eb6a61eae642e6750    
  
author   : David Steele <[email protected]>    
date     : Sat, 16 Apr 2016 11:11:29 -0400    
  
committer: David Steele <[email protected]>    
date     : Sat, 16 Apr 2016 11:11:29 -0400    

Click here for diff

M README.md
M doc/xml/index.xml
M doc/xml/user-guide.xml