David Steele
ddd4c14773
Implemented issue #129 : Stop/Start Commands.
...
Implemented issue #136 : Add stderr back into protocol layer.
There were also miscellaneous bug fixes and improvements to buffering in IO.pm.
2015-10-08 11:43:56 -04:00
David Steele
e488f7bb19
Fixed issue #144 : Error on resume when temp files (file.tmp.*) present.
2015-09-22 21:07:49 -04:00
David Steele
e0dafbff7f
Improvements to issue #132 : Improved command-line help.
...
Regression tests are now more comprehensive by default.
Better handling for errors in safeExit().
Release notes.
2015-09-09 15:40:54 -04:00
David Steele
d7e3be1ebf
Fixed issue #138 : Fix --no-start-stop working on running db without --force.
...
Unable to reproduce this anymore. It seems to have been fixed with the last round of config changes. Add regression tests to make sure it doesn't happen again.
2015-09-08 18:29:13 -04:00
David Steele
b17bf31fb6
Implement issue #130 : Info files should be updated with new version when pgBackRest is upgraded.
2015-09-08 16:58:00 -04:00
David Steele
59b2261a8e
Fix issue #137 : Info command throws an exception if no stanzas exist.
2015-09-08 16:44:47 -04:00
David Steele
ac3c0d43ab
Implemented issue #132 : Improved command-line help.
...
Implemented issue #133 : Dynamic module loading where possible.
2015-09-08 07:31:24 -04:00
David Steele
bf3ef15ccc
Implemented issue #117 : Refactor expiration tests to be purely synthetic
2015-09-01 19:05:10 -04:00
David Steele
6a9377a0a9
Code cleanup and refactoring to standardize on patterns that have evolved over time.
2015-08-29 14:20:46 -04:00
David Steele
8c0508789e
Implemented issue #25 : Option to call stop_backup with every backup.
2015-08-08 17:11:20 -04:00
David Steele
12e8a7572c
Worked on issue #122 : 9.5 Integration.
...
Expiration tests worked differently with checkpoint_segments. Only allow this test < 9.5 until purely synthetic tests are written.
2015-08-08 00:51:58 -04:00
David Steele
4e7bd4468a
Worked on issue #122 : 9.5 Integration.
...
Most tests are working now. What's not working:
1) --target-resume option fails because pause_on_recovery setting was removed. Need to implement to the new 9.5 option and make that work with older versions in a consistent way.
2) No tests for the new .partial WAL segments that can be generated on timeline switch.
2015-08-06 16:36:55 -04:00
David Steele
ca1fd9740a
Working on issue #117 : Refactor expiration tests to be purely synthetic.
...
Split BackupTest.pm into two modules. It was getting ungainly to work on.
2015-08-06 00:00:30 -04:00
David Steele
f8a2da9400
Work on issue #48 : Abandon threads and go to processes
...
* Major refactoring of the protocol layer to support this work.
* Fixed protocol issue that was preventing ssh errors (especially connect) from being logged.
2015-08-05 08:43:41 -04:00
David Steele
f3199d13b1
Implement issue #115 : When restoring copy pg_control last.
2015-07-16 11:12:48 -04:00
David Steele
89c0f23f37
Update release notes and some test fixes.
2015-07-13 12:13:07 -04:00
David Steele
8b7fd99637
Added vagrant configuration for Ubuntu 12.04.
...
Changes to regression tests to work better with VMs.
2015-07-06 21:00:48 -04:00
David Steele
dcad0f7007
Merged issue #111 : Print the real exception when DBH->connect fails.
...
Author: Eric Radman
2015-06-22 14:20:56 -04:00
David Steele
f210fe99c3
Implemented issue #109 : Move VERSION into source code.
...
Also stopped replacing FORMAT number which explains the large number of test log changes. FORMAT should change very rarely and cause test log failures when it does.
2015-06-22 13:11:07 -04:00
David Steele
3f841fcd95
Improved issue #110 : 'db-version' is required but not defined.
...
Improved the error message and added hints.
2015-06-22 09:51:16 -04:00
David Steele
61dfeca3c1
Fixed issue #108 : Incompatibility with Perl 5.10.1
2015-06-21 12:06:13 -04:00
David Steele
4e2c14623b
Work on issue #48 : Abandon threads and go to processes
...
More separation of the protocol and remote layers than was done in issue #106 .
Settings are passed to the remote via command-line parameters rather than in the protocol.
2015-06-18 15:39:30 -04:00
David Steele
9511f9c35c
Implemented issue #106 : Roll pg_backup_remote into pg_backrest
2015-06-17 11:26:07 -04:00
David Steele
148836fe44
Implemented issue #26 : Info command.
...
* Includes updating the manifest to format 4. It turns out the manifest and .info files were not very good for providing information. A format update was required anyway so worked through the backlog of changes that would require a format change.
* Multiple database versions are now supported in the archive. Does't actually work yet but the structure should be good.
* Tests use more constants now that test logs can catch name regressions.
2015-06-13 18:25:49 -04:00
David Steele
1586e0eb75
Implement issue #92 : Check for ERRORs in backup full tests
2015-05-29 17:58:13 -04:00
David Steele
13e4eec629
Implement issue #90 : Move archive-max-mb archive-stop checks to end of archive-push.
2015-05-29 11:41:19 -04:00
David Steele
7ace66e544
Implement issue #68 : Allow duplicate WAL to be pushed if the checksum matches.
2015-05-29 08:12:39 -04:00
David Steele
3083e5fc7e
Fix for issue #83 : Provide more helpful error message during archive-stop situations.
...
Fix for issue #84 : archive-async in combination with archive-max-mb doesn't work as documented.
Unit tests for archive stop.
2015-05-28 13:17:34 -04:00
David Steele
d5335b40e8
Fix for issue #80 : enabling archive-copy causes failing differential & incremental backups
2015-05-22 14:49:14 -04:00
David Steele
9aa41ee76b
Added tablespace setting to allow compact database restores for development, staging, etc.
2015-05-08 18:34:27 -04:00
David Steele
a0d985b7ad
Fixed an issue where an absolute path was not written into recovery.conf when the restore was run with a relative path.
2015-05-07 17:37:25 -05:00
David Steele
095a9a0b83
Added resume setting to allow disabling resume feature.
2015-05-07 10:29:30 -06:00
David Steele
328c2ca5c0
Much better resume:
...
1) Re-checksums files that have checksums in the manifest
2) Recopies files that do not have a checksum
3) Saves the manifest at regular intervals to preserve checksums
4) Unit tests for all cases (that I can think of)
2015-05-06 18:24:34 -06:00
David Steele
56588f6fdd
Log testing can now be enabled for certain deterministic tests. This works by comparing the generated logs against a previous copy. Currently only enabled for the backup/synthetic tests.
2015-05-05 11:08:48 -06:00
David Steele
e20a3c991d
Added tests for set = latest.
2015-04-19 17:28:19 -04:00
David Steele
9fe7f87e3a
Allow any boolean option that is not command-line only to be negated.
2015-04-07 19:21:48 -04:00
David Steele
43d86e64a4
First pass at tests comparing rsync to backrest. Decent results, but room for improvement.
...
All tests local over SSH with rsync default compression, 4 threads and default compression on backrest. Backrest default is gzip = 6, assuming rsync is the same.
On a 1GB DB:
rsync time = 32.82
backrest time = 19.48
backrest is 171% faster.
On a 5GB DB:
rsync time = 171.16
backrest time = 86.97
backrest is 196% faster.
2015-04-07 18:36:59 -04:00
David Steele
808c7863b6
Duplicate WAL issue in 9.3 was fixed in 9.3.6.
2015-04-03 09:56:03 -04:00
David Steele
984fceea67
Moved archive functions from pg_backrest.pl and Backup.pl to Archive.pm.
...
Moved Remote code from pg_backrest.pl to Config.pm.
Added version specific code to regression tests and Db.pm.
archive-push checks for duplicate WAL in the archive.
archive-push reads the db sys id to match up WAL to the correct archive.
2015-04-01 15:58:33 -04:00
David Steele
92a4d648ac
Fixed issues in collision unit tests.
2015-03-26 17:42:45 -04:00
David Steele
a998119cba
Various option and unit test fixes.
2015-03-24 18:50:14 -04:00
David Steele
58d6c37f4a
Changed permission to mode in manifest.
2015-03-23 17:17:43 -04:00
David Steele
1729fa1c51
Added unit tests for expiration.
2015-03-17 18:31:05 -04:00
David Steele
882f068254
All config options can now be provided on the command-line.
...
Lots of name changes, but more thought needed there.
Still needs cleanup.
2015-03-12 12:15:19 -04:00
David Steele
7675a11ded
First pass at building automated docs for markdown/html. This works pretty well, but the config sections of doc.xml still require too much maintenance. With the new Config code, it should be possible to generate those sections automatically.
2015-03-08 14:05:41 -04:00
David Steele
ae6bdecfaf
Split command-line parameter processing out into a separate file. This is in preparation allowing all parameters to be specified/overridden on the command line, with pg_backrest.conf being option.
2015-03-08 13:26:09 -04:00
David Steele
942b29d5b4
Added unit test for recovery type=preserve.
2015-03-03 23:15:40 -05:00
David Steele
d19baefdb9
Removed db-timestamp-start and stop from manifest. Better to get these values from
2015-03-03 22:33:41 -05:00
David Steele
7509b01e22
Added format to manifest to identify a manifest/dir structure version.
2015-03-03 21:21:07 -05:00
David Steele
3d0d308a98
Made all warnings FATAL.
...
Fixed one bug that was exposed.
2015-03-03 00:57:20 -05:00