1
0
mirror of https://github.com/pgbackrest/pgbackrest.git synced 2024-12-23 01:24:11 +02:00
Commit Graph

167 Commits

Author SHA1 Message Date
David Steele
b8ce891603 Altered rsync comparison test to use a specially crafted table that has a 70% compression ratio.
Improved the output of file_size_format().
2015-04-11 12:31:39 -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
3f651a8ce8 Unit tests will now work across all installed versions of Postgres.
Created a function to list all supported versions.  Now used for all version checking.
2015-04-02 22:07:23 -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
66c474abe2 A few unit test fixes. 2015-03-23 15:45:25 -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
23102f19e5 All copy() cases generate checksums during copy.
Unit tests for bAppendChecksum option for copy().
2015-03-01 22:23:52 -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
28326d6b4c File->copy now returns hash and size in all cases, though the local copies are not optimal. They just call hash_size(). 2015-02-28 19:07:29 -05:00
David Steele
260a6cb8f1 Working on calculating hash and file size in binary_xfer(). 2015-02-28 15:54:49 -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
50e015a838 Revert "Abortive attempt at cleaning up some thread issues - I realized the issue is in mixing threads and objects too liberally. Trying another approach but want to keep this code for historical and reference purposes."
This reverts commit e95631f82a.
2015-01-30 18:58:49 -05:00
David Steele
e95631f82a Abortive attempt at cleaning up some thread issues - I realized the issue is in mixing threads and objects too liberally. Trying another approach but want to keep this code for historical and reference purposes. 2015-01-30 14:55:55 -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