------------------------------------------------------------------- Wed Jul 11 07:49:49 UTC 2018 - bruno@ioda-net.ch - Critical bug fix release 2.04 (Backup Resume) + IMPORTANT NOTE: This release fixes a critical bug in the backup resume feature. All resumed backups prior to this release should be considered inconsistent. See more information https://pgbackrest.org/release.html + Bug Fixes: - Fix critical bug in resume that resulted in inconsistent backups. A regression in v0.82 removed the timestamp comparison when deciding which files from the aborted backup to keep on resume. - Fix error in selective restore when only one user database exists in the cluster. - Fix non-compliant ISO-8601 timestamp format in S3 authorization headers. AWS and some gateways were tolerant of space rather than zero-padded hours while others were not. + Features: - PostgreSQL 11 Beta 2 support. + Improvements: - Improve the HTTP client to set content-length to 0 when not specified by the server. S3 (and gateways) always set content-length or transfer-encoding but HTTP 1.1 does not require it and proxies (e.g. HAProxy) may not include either. - Set search_path = 'pg_catalog' on PostgreSQL connections + Documentation Improvements: - Create a new section to describe building pgBackRest and build on a separate host. - Add sample S3 policy to restrict bucket privileges. - Packaging : + Explicitly requires all perl deps + Define make_build for 42.3 compilation ------------------------------------------------------------------- Mon May 28 08:21:30 UTC 2018 - bruno@ioda-net.ch - Urgent fix : add perl as BuildRequires and Requires to force presence of libperl.so : Otherwise pgbackrest binary can't find it - Spec : use %make_build macros ------------------------------------------------------------------- Wed May 23 09:55:27 UTC 2018 - bruno@ioda-net.ch - Update release 2.03 version + Bug Fixes: - Fix potential buffer overrun in error message handling. - Fix archive write lock being taken for the synchronous archive-get command. + Improvements: - Embed exported C functions and Perl modules directly into the pgBackRest executable. - Use time_t instead of __time_t for better portability. - Print total runtime in milliseconds at command end. ------------------------------------------------------------------- Thu May 10 10:12:23 UTC 2018 - bruno@ioda-net.ch - Update to bugfix & improvement 2.02 version Parallel Asynchronous Archive Get and Configuration Includes Released May 6, 2018 + Bug Fixes: - Fix directory syncs running recursively when only the specified directory should be synced. - Fix archive-copy throwing "path not found" error for incr/diff backups. - Fix failure in manifest build when two or more files in PGDATA are linked to the same directory. - Fix delta restore failing when a linked file is missing. - Fix rendering of key/value and list options in help. + Features: - Add asynchronous, parallel archive-get. This feature maintains a queue of WAL segments to help reduce latency when PostgreSQL requests a WAL segment with restore_command. - Add support for additional pgBackRest configuration files in the directory specified by the --config-include-path option. Add --config-path option for overriding the default base path of the --config and --config-include-path option. - Add repo-s3-token option to allow temporary credentials tokens to be configured. pgBackRest currently has no way to request new credentials so the entire command (e.g. backup, restore) must complete before the credentials expire. + Improvements: - Update the archive-push-queue-max, manifest-save-threshold, and buffer-size options to accept values in KB, MB, GB, TB, PB where the multiplier is a power of 1024. - Make backup/restore path sync more efficient. Scanning the entire directory can be very expensive if there are a lot of small tables. The backup manifest contains the path list so use it to perform syncs instead of scanning the backup/restore path - Show command parameters as well as command options in initial info log message. - Rename archive-queue-max option to archive-push-queue-max to avoid confusion with the new archive-get-queue-max option. The old option name will continue to be accepted. + Documentation Bug Fixes: - Update docs with 32-bit support and caveats. 32-bit support was added in v1.26. + Documentation Improvements: - Add monitoring examples using PostgreSQL and jq. - Add example of command section usage to archiving configuration. - Remove documentation info --output=json as experimental. - Update out-of-date description for the spool-path option. + Test Suite Features: - Use lcov for C unit test coverage reporting. Switch from Devel::Cover because it would not report on branch coverage for reports converted from gcov. Incomplete branch coverage for a module now generates an error. Coverage of unit tests is not displayed in the report unless they are incomplete for either statement or branch coverage. - Changes of previous 2.01 version from March 6th 2018 + Bug Fixes: - Fix --target-action and --recovery-option options being reported as invalid when restoring with --type=immediate. - Immediately error when a secure option (e.g. repo1-s3-key) is passed on the command line. Since pgBackRest would not pass secure options on to sub-processes an obscure error was thrown. The new error is much clearer and provides hints about how to fix the problem. Update command documentation to omit secure options that cannot be specified on the command-line. - Fix issue passing --no-config to embedded Perl. - Fix issue where specifying log-level-stderr > warn would cause a local/remote process to error on exit due to output found on stderr when none was expected. The max value for a local/remote process is now error. - Fix manifest test in the check command when tablespaces are present. + Improvements: - Error when multiple arguments are set in the config file for an option that does not accept multiple arguments. - Remove extraneous sudo commands from src/Makefile. + Documentation Improvements: - Show index in examples for indexed options, i.e. repo-*, pg-*. - Simplify table of contents on command page by only listing commands. - Remove references to the C library being optional. + Test Suite Features: - Add CentOS/RHEL package builds. - Use clang for static code analysis. Nothing found initially except for some functions that should have been marked __noreturn__. ------------------------------------------------------------------- Fri Mar 9 15:16:24 UTC 2018 - bruno@ioda-net.ch - Packaging : + modernize spec with spec-cleaner -m + remove pgbackrest-release-1.00_datadir.patch pgbackrest is now written in C + Build C binary and lib C + Adjust new parameter name in pgbackrest-conf.patch - Update to new 2.0 version + Features: The archive-push command is now partially coded in C which allows the PostgreSQL archive_command to run significantly faster when processing status messages from the asynchronous archive process. (Reviewed by Cynthia Shang.) + Improvements: - Improve check command to verify that the backup manifest can be built. (Contributed by Cynthia Shang.) - Improve performance of HTTPS client. Buffering now takes the pending bytes on the socket into account (when present) rather than relying entirely on select(). In some instances the final bytes would not be flushed until the connection was closed. - Improve S3 delete performance. The constant S3_BATCH_MAX had been replaced with a hard-coded value of 2, probably during testing. - Allow any non-command-line option to be reset to default on the command-line. This allows options in pgbackrest.conf to be reset to default which reduces the need to write new config files for specific needs. - The C library is now required. This eliminates conditional loading and eases development of new library features. - The pgbackrest executable is now a C binary instead of Perl. This allows certain time-critical commands (like async archive-push) to run more quickly. - Rename db-* options to pg-* and backup-* options to repo-* to improve consistency. repo-* options are now indexed although currently only one is allowed. ** This imply you need to revisit your pgbackrest.conf ** - Packaging : + Use make install (now fixed upstream) for bin ------------------------------------------------------------------- Sun Feb 4 17:14:16 UTC 2018 - bruno@ioda-net.ch - Upgrade to 1.28 bugfix version + Bug Fixes: - Fixed inability to restore a single database contained in a tablespace using --db-include. (Fixed by Cynthia Shang.) - Ensure latest db-id is selected on when matching archive.info to backup.info. This provides correct matching in the event there are system-id and db-version duplicates (e.g. after reverting a pg_upgrade). (Fixed by Cynthia Shang. Reported by Adam K. Sumner.) - Fixed overly chatty error message when reporting an invalid command. (Reported by Jason O'Donnell.) + Features: Add stanza-delete command to cleanup unused stanzas. (Contributed by Cynthia Shang. Suggested by Magnus Hagander.) + Improvements: Improve stanza-create command so that it does not error when the stanza already exists. (Contributed by Cynthia Shang.) ------------------------------------------------------------------- Thu Feb 1 13:20:00 UTC 2018 - bruno@ioda-net.ch - Packaging : + Fix wrong requirement of previous version, now use correct %perl_requires, add openssl-devel for crytpo on libc + Add pgbackrest-conf.patch : a minimal working configuration file + Build pgbackrest-libc allowing crypto and checksum + Added %check section + Rework install and file section (copy of pgdg packaging and use of correct %perl macros + Disable build on i586 pgBackRest need perl with 64bit integer support. see upstream issue https://github.com/pgbackrest/pgbackrest/issues/478 + use %_localstatedir/lib as %_sharedstatedir is broken on Leap 42.x and some SLE12 ------------------------------------------------------------------- Fri Jan 26 15:19:05 UTC 2018 - joop.boonen@opensuse.org - update to 1.27 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.27 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.26 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.25 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.24 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.23 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.22 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.21 - Added missing requirement ------------------------------------------------------------------- Thu Aug 3 17:42:43 UTC 2017 - mrueckert@suse.de - update to 1.20 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.20 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.19 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.18 ------------------------------------------------------------------- Tue Mar 21 11:04:04 UTC 2017 - bruno@ioda-net.ch - update to 1.17 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.17 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.16 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.15 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.14 ------------------------------------------------------------------- Fri Feb 10 00:39:58 UTC 2017 - mrueckert@suse.de - update to 1.13 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.13 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.12 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.11 ------------------------------------------------------------------- Thu Nov 10 11:09:58 UTC 2016 - mrueckert@suse.de - update to 1.10 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.10 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.09 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.08 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.07 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.06 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.05 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.04 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.03 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.02 https://github.com/pgbackrest/pgbackrest/releases/tag/release%2F1.01 ------------------------------------------------------------------- Wed May 4 02:46:09 UTC 2016 - mrueckert@suse.de - added pgbackrest-release-1.00_datadir.patch: perl libraries installed in the normal search path we dont need this anymore. ------------------------------------------------------------------- Wed May 4 02:26:45 UTC 2016 - mrueckert@suse.de - update to 1.00