David Steele
5c815e4fc0
Closed #58 : Get catalog number for better tablespace copying
...
When backing up and restoring tablespaces pgBackRest only operates on the subdirectory created for the version of PostgreSQL being run against. Since multiple versions can live in a tablespace (especially during a binary upgrade) this prevents too many files from being copied during a backup and other versions possibly being wiped out during a `--delta` restore. This only applies to PostgreSQL >= 9.0 -- before that only one PostgreSQL version could use a tablespace.
2016-02-02 14:33:15 -05:00
David Steele
02405e851c
Closed #163 : Document Generation Issue
...
Fixed an issue where document generation failed because some OSs are not tolerant of having multiple installed versions of PostgreSQL. A separate VM is now created for each version. Also added a sleep after database starts during document generation to ensure the database is running before the next command runs.
Reported by John Harvey.
2016-01-22 18:01:21 -05:00
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
904a8c956f
Refactor of expiration to use backup.info for a list of what needs to be expired rather than looking at the backup directory.
2016-01-19 07:39:29 -05:00
David Steele
65cce69dcc
Closed #131 : Offline backups make expire command fail.
2016-01-15 23:37:17 -05:00
David Steele
fce7261536
Only allow --no-cleanup option when a single test is selected.
2016-01-15 23:22:30 -05:00
David Steele
4d12cc233e
Fix for typo in error message.
2016-01-15 20:31:29 -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
67fb7a23bc
Master test log is output to file.
2016-01-14 19:37:06 -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
81a2fde21f
Fixed typos in test documentation.
2016-01-10 21:07:07 -05:00
David Steele
0f88943b7b
Database versions are now run as separate tests.
2016-01-10 19:30:51 -05:00
David Steele
cd9fa6f028
Updated test logs for partial WAL segment support.
2016-01-10 09:19:21 -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
e72165a689
Provisional support for PostgreSQL 9.5. No support for archive_mode = 'always'
or .partial
WAL on a standby.
2016-01-09 10:11:03 -05:00
David Steele
c8f863fbab
Text execution improvements:
...
1) Tests for all operating systems can now be run with a single command.
2) Tests can be run in parallel with --process-max.
3) Container generation now integrated into test.pl
4) Some basic test documentation.
2016-01-09 08:21:53 -05:00
David Steele
4a384ffbdb
Added archive-check config test.
...
Fixed capitalization error in optionboolSetTest().
2016-01-03 20:24:14 -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
7f630aec49
Switched to using docker for all unit tests as this allows for greater automation.
2015-12-29 13:57:10 -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
b0a6954671
A number of doc improvements:
...
1) Started on a general markdown renderer
2) Internal links now work in PDF
3) Improvements to PDF styling
4) Some comment and formatting fixes
5) User guide edits.
2015-12-23 11:04:26 -05:00
David Steele
d5cef05a68
Added rc to version check.
2015-12-21 19:25:50 -05:00
David Steele
a840808bc6
Regression test for issue #159 : duplicated log section entries in config file
...
Add a perl -cW test to prevent similar errors in the future.
2015-12-21 19:25:17 -05:00
David Steele
fa05715dec
Added documentation in the user guide for delta restores, expiration, dedicated backup hosts, starting and stopping pgBackRest, and replication.
2015-11-22 16:44:01 -05:00
David Steele
8ddfdcdd3b
Various fixes and features implemented during doc development
...
* Better messaging for expiration.
* Fixed already stopped message.
* retention-archive and retention-archive-type now use retention-full and 'full' when not specified.
* Fixed issue where backup-user was required (should default to backrest).
* ExecuteTest now supports retries.
* Fixed issue where log test was not comparing test logs.
* Fixed issue where test logs would not match for ssh connection errors
2015-11-22 14:02:14 -05:00
David Steele
57a06ba3b1
Implemented issue #148 : Website with basic user guide.
2015-10-28 10:10:36 +01:00
David Steele
6e170d27e4
Replaced expired CentOS VMs with new ones.
2015-10-08 12:23:37 -04: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
8d01138f6d
Improved issue #135 : Suppress PostgreSQL notices.
...
Regression tests now fail if there is any unexpected output on stderr.
2015-09-08 15:47:34 -04:00
David Steele
adc5568b15
Fixed issue #132 : Improved command-line help.
...
Some platform specific fixes and added regression tests to detect issues.
2015-09-08 12:58:13 -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
d3262822ef
Fixed issue #128 : Replace config name in test logs
...
It was actually the bin path that was causing the issue.
2015-08-27 15:55:29 -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
2edf5d4bf7
Split most of README.md out into CHANGELOG.md and USERGUIDE.md.
...
Added release dates to change log.
2015-08-07 14:43:53 -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
576d50fc1e
Added ssh control master config to speed regression testing.
...
Added vagrant config for Centos 7.
2015-08-05 18:54:41 -04:00