1
0
mirror of https://github.com/pgbackrest/pgbackrest.git synced 2024-12-14 10:13:05 +02:00
Commit Graph

49 Commits

Author SHA1 Message Date
David Steele
7248795b91 Work on issue #48: Abandon threads and go to processes
Replaced IPC::System::Simple and Net::OpenSSH with IPC::Open3 to eliminate CPAN dependency for multiple distros.  Using open3 will also be used for local processes so it make sense to switch now.
2015-06-29 22:07:42 -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
61dfeca3c1 Fixed issue #108: Incompatibility with Perl 5.10.1 2015-06-21 12:06:13 -04:00
David Steele
06c2904212 Change operation constants and functions to command. 2015-06-18 16:55:09 -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
57640d1ac3 Implemented issue #96: Executable names 2015-06-14 08:37:37 -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
6d2f2d3f91 Fix for issue #74: More helpful message when targeting missing stanzas. 2015-05-28 20:52:42 -04:00
David Steele
a4974f8996 Fix for issue #70: command line help improvements 2015-05-26 15:29:42 -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
87f69508e3 Set version to 0.75 2015-04-21 10:48:01 -04:00
David Steele
279bd07623 Each option is assigned a source to designate where it came from (param, config, default).
operationWrite() created to easily pass parameters on to a new process.
2015-04-19 17:29:52 -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
7081c8b867 New model where threads are created early and destroyed late.
Backups now work like restores in terms of how jobs are queued.
Split out BackupFile and RestoreFile for easier multi-threading/processing.
2015-04-07 07:34:37 -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
a998119cba Various option and unit test fixes. 2015-03-24 18:50:14 -04:00
David Steele
a3604bc512 Changed retention section to expire. 2015-03-24 11:43:37 -04:00
David Steele
8a3c6388b2 Removed WAL from some option names - still waffling on this naming thing. 2015-03-23 16:01:15 -04:00
David Steele
f4f31302f0 Broke archive-required into two options: backup-wal-check and backup-wal-store. 2015-03-16 14:45:53 -04:00
David Steele
258fb9c6e2 More work on automated docs. Merging this to go back to some feature/bug work for a while. 2015-03-16 14:01:01 -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
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
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
7ede058b45 Backup checksums are no longer optional. 2015-02-28 20:31:56 -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
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
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
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
eeffd62a12 Working on recovery options. 2015-01-25 17:27:46 -05:00
David Steele
21c715b25c Restore tablespace remaps are working. 2015-01-22 20:11:33 -05:00
David Steele
131d910906 New structure for --delta and --force params. 2015-01-08 15:43:43 -05:00
David Steele
91b06bef47 File->manifest detects files that are modified in the future. 2015-01-03 14:22:59 -05:00
David Steele
9f8f33f957 Working on restore options and integration with unit tests. 2014-12-23 18:52:38 -05:00
David Steele
a96b83beb8 Restore can now remap base/tablespace locations.
Made Restore more modular.
2014-12-23 15:03:06 -05:00
David Steele
1557327d2b Restore cleans out missing files and some basic unit tests. 2014-12-19 17:49:56 +00:00
David Steele
161a73159e Added some constants. 2014-12-18 22:05:06 +00:00
David Steele
1dc00c9d4b Starting on restore functionality, finally. 2014-12-18 16:42:54 +00:00
David Steele
c76a8d64d0 Moved more config logic to Config.pm 2014-12-16 17:41:54 +00:00
David Steele
6124558347 Moved config functions to a new file. 2014-12-15 22:20:42 +00:00