v1.04: Various Bug Fixes
commit : 277934447b0f4602260978ecb12d2e3d580632df
author : David Steele <david@pgmasters.net>
date : Sat, 30 Jul 2016 09:42:35 -0400
committer: David Steele <david@pgmasters.net>
date : Sat, 30 Jul 2016 09:42:35 -0400
Bug Fixes:
* Fixed an issue an where an extraneous remote was created causing threaded backup/restore to possibly timeout and/or throw a lock conflict. (Reported by Michael Vitale.)
* Fixed an issue where db-path was not required for the check command so an assert was raised when it was missing rather than a polite error message. (Reported by Michael Vitale.)
* Fixed check command to throw an error when database version/id does not match that of the archive. (Fixed by Cynthia Shang.)
* Fixed an issue where a remote could try to start its own remote when the backup-host option was not present in pgbackrest.conf on the database server. (Reported by Lardière Sébastien.)
* Fixed an issue where the contents of pg_xlog were being backed up if the directory was symlinked. This didn't cause any issues during restore but was a waste of space.
* Fixed an invalid log() call in lock routines.
Features:
* Experimental support for non-exclusive backups in PostgreSQL 9.6 beta3. Changes to the control/catalog/WAL versions in subsequent betas may break compatibility but pgBackRest will be updated with each release to keep pace.
Refactoring:
* Enhancements to the protocol layer for improved reliability and error handling.
* All remote types now take locks. The exceptions date to when the test harness and pgBackRest were running in the same VM and no longer apply.
* Exceptions are now passed back from threads as messages when possible rather than raised directly.
* Temp files created during backup are now placed in the same directory as the target file.
* Output lock file name when a lock cannot be acquired to aid in debugging.
* Reduce calls to protocolGet() in backup/restore.
* Suppress banners on SSH protocol connections.
* Improved remote error messages to identify the host where the error was raised.
M README.md
M doc/release.pl
M doc/resource/exe.cache
M doc/xml/release.xml
M lib/pgBackRest/Version.pm
Fixed an issue where a remote could try to start its own remote.
commit : f2b3dda647c9abc487a099876fa0b03f7cd4fa53
author : David Steele <david@pgmasters.net>
date : Sat, 30 Jul 2016 08:49:26 -0400
committer: David Steele <david@pgmasters.net>
date : Sat, 30 Jul 2016 08:49:26 -0400
This is a better approach than 93320b8 (reverted in this commit) because it ensures that the remote type will be none so any functions that utilize optionRemoteTypeTest will work correctly.
This bug was only an issue when backup-host was not properly configured on the database host.
M doc/xml/release.xml
M lib/pgBackRest/Config/Config.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
Disable control master for older OS versions where it is less stable.
commit : 94a4cb4123c9a300d66e1f34b666bba84f4d727b
author : David Steele <david@pgmasters.net>
date : Sat, 30 Jul 2016 08:43:38 -0400
committer: David Steele <david@pgmasters.net>
date : Sat, 30 Jul 2016 08:43:38 -0400
M doc/xml/release.xml
M test/lib/pgBackRestTest/Common/ContainerTest.pm
M test/lib/pgBackRestTest/Common/VmTest.pm
Reduce the frequency that certain tests are run to save time in regression.
commit : 1b6b26956ab2d0ee7957d48b148b080376c0a3fe
author : David Steele <david@pgmasters.net>
date : Fri, 29 Jul 2016 18:32:54 -0400
committer: David Steele <david@pgmasters.net>
date : Fri, 29 Jul 2016 18:32:54 -0400
M doc/xml/release.xml
M test/lib/pgBackRestTest/Backup/BackupTest.pm
Enhancements to the protocol layer for improved reliability and error handling.
commit : ac23716d26aaa14470f1ff8307dfe6010e0c3c05
author : David Steele <david@pgmasters.net>
date : Fri, 29 Jul 2016 18:27:35 -0400
committer: David Steele <david@pgmasters.net>
date : Fri, 29 Jul 2016 18:27:35 -0400
M doc/xml/release.xml
M lib/pgBackRest/File.pm
M lib/pgBackRest/Protocol/Common.pm
M lib/pgBackRest/Protocol/CommonMaster.pm
M lib/pgBackRest/Protocol/CommonMinion.pm
M lib/pgBackRest/Protocol/IO.pm
Exceptions are now passed back from threads as messages when possible rather than raised directly.
commit : b44786321889a2f7599c505c9f7b1b3726810dff
author : David Steele <david@pgmasters.net>
date : Fri, 29 Jul 2016 18:21:57 -0400
committer: David Steele <david@pgmasters.net>
date : Fri, 29 Jul 2016 18:21:57 -0400
M doc/xml/release.xml
M lib/pgBackRest/Protocol/ThreadGroup.pm
Fixed a issue where a remote could try to start its own remote.
commit : 93320b865e891701dea7383166f8bca6117d5efc
author : David Steele <david@pgmasters.net>
date : Fri, 29 Jul 2016 18:19:51 -0400
committer: David Steele <david@pgmasters.net>
date : Fri, 29 Jul 2016 18:19:51 -0400
M doc/xml/release.xml
M lib/pgBackRest/Config/Config.pm
Fixed an invalid log call in lock routines.
commit : af5965a6ef9ebe76a1b5ff5c6a82fdaa5f4d3658
author : David Steele <david@pgmasters.net>
date : Fri, 29 Jul 2016 18:17:32 -0400
committer: David Steele <david@pgmasters.net>
date : Fri, 29 Jul 2016 18:17:32 -0400
M doc/xml/release.xml
M lib/pgBackRest/Common/Lock.pm
Fixed an issue where the contents of pg_xlog were being copied if the directory was symlinked.
commit : a3b8808f94cb8ca6931517002cf30c8b3987357b
author : David Steele <david@pgmasters.net>
date : Fri, 29 Jul 2016 18:44:53 -0400
committer: David Steele <david@pgmasters.net>
date : Fri, 29 Jul 2016 18:44:53 -0400
M doc/xml/release.xml
M lib/pgBackRest/Manifest.pm
M test/lib/pgBackRestTest/Backup/Common/HostDbCommonTest.pm
Temp files created during backup are now placed in the same directory as the target file.
commit : ef33febfb73f449085d6f3da9b0bd6157560e52f
author : David Steele <david@pgmasters.net>
date : Fri, 29 Jul 2016 18:43:59 -0400
committer: David Steele <david@pgmasters.net>
date : Fri, 29 Jul 2016 18:43:59 -0400
M doc/xml/release.xml
M lib/pgBackRest/File.pm
M test/expect/backup-synthetic-005.log
Fixed an issue where multi-threaded tests were not being run when requested.
commit : 95bbc8ad544cac4a95a90f94de2ca8856811dc37
author : David Steele <david@pgmasters.net>
date : Fri, 29 Jul 2016 18:02:16 -0400
committer: David Steele <david@pgmasters.net>
date : Fri, 29 Jul 2016 18:02:16 -0400
M doc/xml/release.xml
M test/lib/pgBackRestTest/Backup/BackupCommonTest.pm
M test/lib/pgBackRestTest/Backup/BackupTest.pm
M test/lib/pgBackRestTest/Backup/Common/HostBackupTest.pm
M test/lib/pgBackRestTest/Config/ConfigTest.pm
M test/lib/pgBackRestTest/File/FileTest.pm
M test/lib/pgBackRestTest/Help/HelpTest.pm
M test/test.pl
Fixed check command to throw an error when database version/id does not match that of the archive.
commit : 6e9d5f5bd31c835bf6aa7058c3c00a160d56b6c8
author : Cynthia Shang <cynthia.shang@crunchydata.com>
date : Fri, 29 Jul 2016 14:02:11 -0400
committer: David Steele <david@pgmasters.net>
date : Fri, 29 Jul 2016 14:02:11 -0400
Fixed by Cynthia Shang.
M doc/xml/release.xml
M lib/pgBackRest/Archive.pm
M lib/pgBackRest/ArchiveInfo.pm
M lib/pgBackRest/BackupInfo.pm
M lib/pgBackRest/Common/Ini.pm
M lib/pgBackRest/Config/Config.pm
M lib/pgBackRest/Expire.pm
M lib/pgBackRest/Protocol/RemoteMinion.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/lib/pgBackRestTest/Backup/BackupTest.pm
M test/lib/pgBackRestTest/Backup/Common/HostBackupTest.pm
Closed #220: Installation documentation misinformation.
commit : f95d4af64a9e7cee15e190704fa9b4522f08e31e
author : David Steele <david@pgmasters.net>
date : Tue, 26 Jul 2016 18:50:58 -0400
committer: David Steele <david@pgmasters.net>
date : Tue, 26 Jul 2016 18:50:58 -0400
Updated information about package availability on supported platforms.
M doc/xml/release.xml
M doc/xml/user-guide.xml
Added clarification on why the default for the backrest-user option is backrest.
commit : ee80b7b255edeac3513781a6d77c84d916832baf
author : David Steele <david@pgmasters.net>
date : Tue, 26 Jul 2016 18:30:25 -0400
committer: David Steele <david@pgmasters.net>
date : Tue, 26 Jul 2016 18:30:25 -0400
M doc/xml/release.xml
M doc/xml/user-guide.xml
Closed #209: Don't use "localtime" for HTML-docs.
commit : 18447569906f915c7801e9ac07500e6d72c8482d
author : David Steele <david@pgmasters.net>
date : Tue, 26 Jul 2016 17:40:42 -0400
committer: David Steele <david@pgmasters.net>
date : Tue, 26 Jul 2016 17:40:42 -0400
HTML footer dates are statically created in English in order to be reproducible.
M doc/manifest.xml
M doc/xml/release.xml
Improved remote error messages to identify the host where the error was raised.
commit : 273d1c08d8cae647afe1b228a865de9a92177cd1
author : David Steele <david@pgmasters.net>
date : Tue, 26 Jul 2016 16:57:38 -0400
committer: David Steele <david@pgmasters.net>
date : Tue, 26 Jul 2016 16:57:38 -0400
M doc/xml/release.xml
M lib/pgBackRest/Protocol/Common.pm
M lib/pgBackRest/Protocol/CommonMaster.pm
M lib/pgBackRest/Protocol/CommonMinion.pm
M lib/pgBackRest/Protocol/IO.pm
M lib/pgBackRest/Protocol/RemoteMaster.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
M test/lib/pgBackRestTest/Common/ExecuteTest.pm
M test/lib/pgBackRestTest/Common/LogTest.pm
Updated control/catalog/WAL versions for 9.6 beta3.
commit : bc5c04ffe71faed09519e0bfff1f9ef579fc5aae
author : David Steele <david@pgmasters.net>
date : Tue, 26 Jul 2016 16:39:01 -0400
committer: David Steele <david@pgmasters.net>
date : Tue, 26 Jul 2016 16:39:01 -0400
M doc/xml/release.xml
M lib/pgBackRest/Archive.pm
M lib/pgBackRest/Db.pm
Suppress banners on SSH protocol connections.
commit : b6ac6b0f1c0d011ada945d9d027c67923a98173b
author : David Steele <david@pgmasters.net>
date : Tue, 26 Jul 2016 16:28:43 -0400
committer: David Steele <david@pgmasters.net>
date : Tue, 26 Jul 2016 16:28:43 -0400
M doc/xml/release.xml
M lib/pgBackRest/Protocol/RemoteMaster.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
M test/lib/pgBackRestTest/Common/ContainerTest.pm
Reduce calls to protocolGet() in backup/restore.
commit : f31ec20fcb249027a4aa455a9193eee40842497d
author : David Steele <david@pgmasters.net>
date : Tue, 26 Jul 2016 16:21:14 -0400
committer: David Steele <david@pgmasters.net>
date : Tue, 26 Jul 2016 16:21:14 -0400
M doc/xml/release.xml
M lib/pgBackRest/Backup.pm
M lib/pgBackRest/Restore.pm
Output lock file name when a lock cannot be acquired to aid in debugging.
commit : 98a67792ecd02c05511de7ec9c1830a200326ea7
author : David Steele <david@pgmasters.net>
date : Tue, 26 Jul 2016 16:14:15 -0400
committer: David Steele <david@pgmasters.net>
date : Tue, 26 Jul 2016 16:14:15 -0400
M doc/xml/release.xml
M lib/pgBackRest/Common/Lock.pm
All remote types now take locks.
commit : d96b1a0dbc86fab538bf1be53825675774e9cbc9
author : David Steele <david@pgmasters.net>
date : Tue, 26 Jul 2016 16:12:38 -0400
committer: David Steele <david@pgmasters.net>
date : Tue, 26 Jul 2016 16:12:38 -0400
The exceptions date to when the test harness and pgBackRest were running in the same VM and no longer apply.
M bin/pgbackrest
M doc/xml/release.xml
Fixed #219: Unable to acquire restore lock.
commit : 095351f145003c62b24770e8a5ef96ec6125e624
author : David Steele <david@pgmasters.net>
date : Tue, 26 Jul 2016 16:08:05 -0400
committer: David Steele <david@pgmasters.net>
date : Tue, 26 Jul 2016 16:08:05 -0400
Fixed an issue an where an extraneous remote was created causing threaded backup/restore to possibly timeout and/or throw a lock conflict.
M doc/xml/release.xml
M lib/pgBackRest/Protocol/ThreadGroup.pm
Fixed an issue where db-path was not required for the check command so an assert was thrown when it was missing rather than a polite error message.
commit : 5893c3cd2e7e6dd77283b17d59a5e72c34f6dec7
author : David Steele <david@pgmasters.net>
date : Tue, 19 Jul 2016 15:26:41 -0400
committer: David Steele <david@pgmasters.net>
date : Tue, 19 Jul 2016 15:26:41 -0400
Reported by Michael Vitale.
M doc/xml/release.xml
M lib/pgBackRest/Config/Config.pm
M lib/pgBackRest/Version.pm
Fixed a version checking issue in test.pl.
commit : 9ae6c01432ba66f5b2b743394af0ac00908a0ea9
author : David Steele <david@pgmasters.net>
date : Tue, 19 Jul 2016 15:22:20 -0400
committer: David Steele <david@pgmasters.net>
date : Tue, 19 Jul 2016 15:22:20 -0400
M doc/xml/release.xml
M test/test.pl
Added release.pl to make releases reproducible.
commit : 6e528080650dda98109d2bc31c48197804a29eda
author : David Steele <david@pgmasters.net>
date : Sat, 2 Jul 2016 11:08:25 -0400
committer: David Steele <david@pgmasters.net>
date : Sat, 2 Jul 2016 11:08:25 -0400
M doc/doc.pl
M doc/lib/BackRestDoc/Custom/DocCustomRelease.pm
A doc/release.pl
M doc/xml/release.xml