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
David Steele
7dbb11e8b8
Added buffer-size param and added config validation improvements.
2015-03-02 22:58:32 -05:00
David Steele
8e8f2f3c77
New config options compress-level and compress-level-network to control compression levels.
2015-03-02 20:36:12 -05:00
David Steele
0df1b7c473
Changed file sizes are now detected and stored in the manifest.
...
Remove thread file minimums - they are unrealistic for a real db and hinder unit tests.
2015-03-01 22:43:32 -05:00
David Steele
76391dde90
Archive checksums are not calculated in stream.
2015-03-01 16:42:27 -05:00
David Steele
7ede058b45
Backup checksums are no longer optional.
2015-02-28 20:31:56 -05:00
David Steele
5d10a18b25
Added thread-max parameter to test.pl to allow backup threads to be specified.
2015-02-28 10:21:36 -05:00
David Steele
d2602a5c07
Tracking down a lockup in the restore threads. It doesn't happen in backup - they are the same except that restore uses the ThreadGroup object. I'm beginning to think that threads and objects don't play together very nicely. Objects in threads seems OK, but threads in objects, not so much.
2015-02-03 20:33:33 -05:00
David Steele
7bee43372d
Increase timeout.
2015-02-02 21:10:44 -05:00
David Steele
850c978240
All restore compares no-start-stop for now.
2015-02-02 19:56:48 -05:00
David Steele
bde8943517
Fixes to restore compare unit tests.
2015-02-02 18:33:11 -05:00
David Steele
8abcf6caf1
For no just ignore sizes in the tests since they are normal and do not indicate a bad backup.
2015-02-02 08:28:37 -05:00
David Steele
a6d3b7e1a9
Working on checking restores against the manifest. Current issue is that the manifest does not always record the final size of the file - it may change while the file is being copied. This is fine in principal but makes testing a pain.
2015-01-31 23:04:24 -05:00
David Steele
267efbd71d
Fixed restore::thread-max
2015-01-31 15:37:59 -05:00
David Steele
e524c4dd1a
Timeline unit tests are working.
...
Options from config file are being written to recovery.conf.
Fixed issue with .history files not being picked up by archive-xfer.
2015-01-31 13:48:09 -05:00
David Steele
11c257296a
In the end it was a single non-undefed reference holding up the show. The Backup file should be split into Archive, Backup, Expire, and made into objects. That would cut down on this kind of nastiness.
2015-01-30 20:16:21 -05:00
David Steele
fb934ecce9
Allow immediate stops when discarding data at end of unit test. Makes the shutdowns faster.
2015-01-30 14:54:08 -05:00
David Steele
19e455afc1
Some fixes in unit tests - more needed.
2015-01-28 16:25:38 -05:00
David Steele
499d6c8422
Added tests for all --delta --force combinations.
...
Added error check for postmaster running.
Added error check for path not empty.
2015-01-28 13:14:46 -05:00
David Steele
16dd271794
Added an incremental backup to vary the unit tests.
2015-01-28 11:12:21 -05:00
David Steele
139b1cf872
Fixed small race condition in cleanup - the archiver was recreating paths after they had been deleted. Put in a loop to make sure it gets done.
2015-01-28 10:29:29 -05:00
David Steele
60550cd45b
Archive async now works local, but there is a pending bug to make sure archive::path != backup::path.
...
Added code to be sure that restore will not try to log into the backup path unless it is local.
2015-01-28 00:28:21 -05:00
David Steele
a59bd8c328
Restores except for type=none are mostly working. There are some failing unit tests to fix.
2015-01-27 22:59:59 -05:00
David Steele
13544d51bf
Recovery is working for none and default, but unit tests are not complete.
2015-01-27 11:44:23 -05:00
David Steele
f59aae101d
Ready to start writing recovery unit tests.
2015-01-26 14:59:58 -05:00
David Steele
ac22c314a9
Working on plumbing for recovery options.
2015-01-26 11:01:24 -05:00
David Steele
6db49e1083
Cleaned up some time functions.
2015-01-25 12:20:12 -05:00
David Steele
9069c34e34
Added more tablespace changes to backup unit tests.
2015-01-24 11:05:26 -05:00
David Steele
e1c5f7f8ed
Now able to check for specific errors in unit tests - as long as they are raised with an error code.
2015-01-23 18:28:39 -05:00
David Steele
c6dad12748
Using usleep for more resolution,
2015-01-23 14:12:53 -05:00
David Steele
d3763908e7
Added longer sleep to show how big an issue this can be.
2015-01-22 21:20:49 -05:00
David Steele
a3b3f98f66
Fixed some issues with remote backups after restore (unit test bugs only).
2015-01-22 20:55:16 -05:00
David Steele
21c715b25c
Restore tablespace remaps are working.
2015-01-22 20:11:33 -05:00
David Steele
df4b50b977
Restore with base path remap working.
2015-01-22 19:04:55 -05:00
David Steele
82969eb497
Wrote some helper functions to make backup unit tests simpler.
...
Fixed an issue with checksum generation in resume.
2015-01-22 17:43:19 -05:00
David Steele
b53cb9f64e
Unit tests for backup resume.
...
Improved warning message when a backup cannot be resumed.
2015-01-22 10:54:02 -05:00
David Steele
fc2838d60f
All references to old-style manifest eliminated (hopefully).
2015-01-21 18:37:49 -05:00