David Steele
83b1a3cb44
Closed #150 : Fixed an issue where a temp WAL file left over after a well-timed system crash could cause the next archive-push
to fail.
2016-01-20 21:28:40 -05:00
David Steele
747346db67
Closed #162 : When restore --set=latest
(the default) the actual backup restored will be output to the log.
2016-01-20 18:34:42 -05:00
David Steele
2d38876bc4
Closed #93 : The retention-archive
option can now be be safely set to less than backup retention (retention-full
or retention-diff
) without also specifying archive-copy=n
. The WAL required to make the backups that fall outside of archive retention consistent will be preserved in the archive. However, in this case PITR will still not be possible for backups that fall outside of archive retention.
2016-01-20 17:24:44 -05:00
David Steele
65cce69dcc
Closed #131 : Offline backups make expire command fail.
2016-01-15 23:37:17 -05:00
David Steele
e91e481f3d
Closed #19 : The following tablespace checks have been added: paths or files in pg_tblspc, relative links in pg_tblspc, tablespaces in $PGDATA. All three will generate errors.
2016-01-15 07:07:00 -05:00
David Steele
c2b1620c53
Logging enhancements:
...
1) Show log output realtime when --max-process=1 or only 1 test is being run.
2) Dry run now shows test output when --vm-out is specified.
2016-01-13 22:43:26 -05:00
David Steele
a0a3d1e97e
Closed #122 : 9.5 Integration
...
The archive_mode = always setting is not included but is covered by issue #125 .
2016-01-13 20:35:12 -05:00
Jason O'Donnell
c7502f341b
Generate an error when archive-check=y
but archive_command
does not execute pg_backrest
.
2016-01-11 09:50:45 -05:00
David Steele
29102b2887
Added error when archive_mode=always is configured.
2016-01-09 23:08:54 -05:00
David Steele
7f0f8823df
Added support for partial WAL segments.
2016-01-09 19:37:28 -05:00
David Steele
6f6c796fbf
Fixed an issue where specifying --no-archive-check would throw a configuration error.
2016-01-03 20:21:30 -05:00
David Steele
ba098d7b91
Fixed an issue where longer-running backups/restores would timeout when remote and threaded.
...
Keepalives are now used to make sure the remote for the main process does not timeout while the thread remotes do all the work. The error messages for timeouts was also improved to make debugging easier.
2015-12-24 10:32:25 -05:00
David Steele
57a06ba3b1
Implemented issue #148 : Website with basic user guide.
2015-10-28 10:10:36 +01:00
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