pgbackrest (2.10-1) unstable; urgency=medium [ Adrian Vondendriesch ] * Bug Fixes: - Add unimplemented S3 driver method required for archive-get. - Fix check for improperly configured pg-path. [ Christoph Berg ] * Update PostgreSQL Maintainers address. -- Adrian Vondendriesch Mon, 11 Feb 2019 19:00:50 +0100 pgbackrest (2.08-2) unstable; urgency=medium * Change default permissions of newly created pgbackrest directories and config files. (Closes: #920268) - Especially /var/lib/pgbackrest might contain sensitive information and shouldn't be readable by others. Change default permissions to 0750. - /etc/pgbackrest.conf might contain encryption keys. Change default permissions to 0640. -- Adrian Vondendriesch Wed, 23 Jan 2019 14:33:15 +0100 pgbackrest (2.08-1) unstable; urgency=medium * New Upstream release: - Bug Fixes: * Remove request for S3 object info directly after putting it. * Correct archive-get-queue-max to be size type. * Add error message when current user uid/gid does not map to a name. * Error when --target-action=shutdown specified for PostgreSQL < 9.5. - Improvements: * Set TCP keepalives on S3 connections. * Reorder info command text output so most recent backup is output last. * Change file ownership only when required. * Redact authentication header when throwing S3 errors. * d/control: - Add libxml2-dev to B-D - Bump Standards-Version to 4.3.0 - Slightly improve package long description -- Adrian Vondendriesch Mon, 07 Jan 2019 17:39:12 +0100 pgbackrest (2.07-1) unstable; urgency=medium * New Upstream release: - Bug Fixes: * Fix issue with archive-push-queue-max not being honored on connection error. * Fix static WAL segment size used to determine if archive-push-queue-max has been exceeded. * Fix error after log file open failure when processing should continue. - Features: * Automatically enable backup checksum delta when anomalies (e.g. timeline switch) are detected. - Improvements: * Retry all S3 5xx errors rather than just 500 internal errors. -- Adrian Vondendriesch Sun, 18 Nov 2018 13:37:00 +0100 pgbackrest (2.06-1) unstable; urgency=medium * New Upstream release: - Bug Fixes: * Fix missing URI encoding in S3 driver. * Fix incorrect error message for duplicate options in configuration files. * Fix incorrectly reported error return in info logging. A return code of 1 from the archive-get was being logged as an error message at info level but otherwise worked correctly. - Features: * Add checksum delta for incremental backups which uses checksums rather than timestamps to determine if files have changed. * PostgreSQL 11 support, including configurable WAL segment size. - Improvements: * Ignore all files in a linked tablespace directory except the subdirectory for the current version of PostgreSQL. Previously an error would be generated if other files were present and not owned by the PostgreSQL user. * Improve info command to display the stanza cipher type. * Improve support for special characters in filenames. * Allow delta option to be specified in the pgBackRest configuration file. -- Adrian Vondendriesch Tue, 16 Oct 2018 19:01:33 +0200 pgbackrest (2.05-1) unstable; urgency=medium * d/control: Add zlib1g-dev to B-D. * New Upstream release: - Bug Fixes: * Fix issue where relative links in $PGDATA could be stored in the backup with the wrong path. This issue did not affect absolutelinks and relative tablespace links were caught by other checks. * Remove incompletely implemented online option from the check command. Offline operation runs counter to the purpose of this command, which is to check if archiving and backups are working correctly. * Fix issue where errors raised in C were not logged when called from Perl. pgBackRest properly terminated with the correct error code but lacked an error message to aid in debugging. * Fix issue when a boolean option (e.g. delta) was specified more than once. - Features: * Allow any option to be set in an environment variable. This includes options that previously could only be specified on the command line, e.g. stanza, and secret options that could not be specified on the command-line, e.g. repo1-s3-key-secret. * Exclude temporary and unlogged relation (table/index) files from backup. Implemented using the same logic as the patches adding this feature to PostgreSQL, 8694cc96 and 920a5e50. Temporary relation exclusion is enabled in PostgreSQL ≥ 9.0. Unlogged relation exclusion is enabled in PostgreSQL ≥ 9.1, where the feature was introduced. * Allow arbitrary directories and/or files to be excluded from a backup. Misuse of this feature can lead to inconsistent backups so read the --exclude documentation carefully before using. * Add log-subprocess option to allow file logging for local and remote subprocesses. * PostgreSQL 11 Beta 3 support. - Improvements: * Allow zero-size files in backup manifest to reference a prior manifest regardless of timestamp delta. * Improve asynchronous archive-get/archive-push performance by directly checking status files. * Improve error message when a command is missing the stanza option. -- Adrian Vondendriesch Mon, 03 Sep 2018 20:35:16 +0200 pgbackrest (2.04-2) unstable; urgency=medium * d/rules: - Fix the documentation build process by adjusting the content of command output cache that is required to building the docs (Closes: #903245). -- Adrian Vondendriesch Sat, 07 Jul 2018 14:08:32 +0200 pgbackrest (2.04-1) unstable; urgency=medium * New Upstream release: - Critical Bug Fix for 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. A backup will be resumed after a prior backup fails, unless resume=n has been specified. A resumed backup can be identified by checking the backup log for the message "aborted backup of same type exists, will be cleaned to remove invalid files and resumed". If the message exists, do not use this backup or any backup in the same set for a restore and check the restore logs to see if a resumed backup was restored. If so, there may be inconsistent data in the cluster. - 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. See note above for more details. * 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. -- Adrian Vondendriesch Fri, 06 Jul 2018 10:24:40 +0200 pgbackrest (2.03-1) unstable; urgency=medium * Drop C library. * Update Suggests. Include: - libio-socket-ssl-perl - libxml-libxml-perl * New Upstream release: - 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. -- Adrian Vondendriesch Tue, 29 May 2018 10:45:42 +0200 pgbackrest (2.02-1) unstable; urgency=medium [ Christoph Berg ] * Install C module to "vendor" directory. Thanks Niko Tyni! (Closes: #896121) [ Adrian Vondendriesch ] * New Upstream release: - 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, or 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 -- Adrian Vondendriesch Wed, 25 Apr 2018 11:35:11 +0200 pgbackrest (2.01-1) unstable; urgency=medium * New Upstream release: - 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 since there is no reason for these processes to emit warnings. * 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. - See http://pgbackrest.org/release.html#2.01 * d/patches: - Drop Makefile patch. -- Adrian Vondendriesch Wed, 21 Mar 2018 12:11:46 +0100 pgbackrest (2.00-1) unstable; urgency=medium * New Upstream release: - 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. - Improvements: * Improve check command to verify that the backup manifest can be built. * 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 configuration filesfor 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. - See http://pgbackrest.org/release.html#2.00 -- Adrian Vondendriesch Tue, 27 Feb 2018 17:12:39 +0100 pgbackrest (1.28-1) unstable; urgency=medium * New Upstream release: - Bug Fixes: * Fixed inability to restore a single database contained in a tablespace using --db-include. * 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 overly chatty error message when reporting an invalid command. - Features: * Add stanza-delete command to cleanup unused stanzas. - Improvements: * Improve stanza-create command so that it does not error when the stanza already exists. -- Adrian Vondendriesch Sat, 03 Feb 2018 14:58:32 +0100 pgbackrest (1.27-1) unstable; urgency=medium * New Upstream release: - Bug Fixes: * Fixed an issue that suppressed locality errors for backup and restore. When a backup host is present, backups should only be allowed on the backup host and restores should only be allowed on the database host unless an alternate configuration is created that ignores the remote host. * Fixed an issue where WAL was not expired on PostgreSQL 10. This was caused by a faulty regex that expected all PostgreSQL major versions to be X.X. * Fixed an issue where the --no-config option was not passed to child processes. This meant the child processes would still read the local config file and possibly cause unexpected behaviors. * Fixed info command to eliminate "db (prior)" output if no backups or archives exist for a prior version of the cluster. - See http://pgbackrest.org/release.html#1.27 -- Adrian Vondendriesch Thu, 21 Dec 2017 17:59:43 +0100 pgbackrest (1.26-1) unstable; urgency=medium * New Upstream release: - Bug Fixes: * Fixed an issue that could cause copying large manifests to fail during restore. * Fixed incorrect WAL offset for 32-bit architectures. * Fixed an issue retrieving WAL for old database versions. After a stanza-upgrade it should still be possible to restore backups from the previous version and perform recovery with archive-get. However, archive-get only checked the most recent db version/id and failed. Also clean up some issues when the same db version/id appears multiple times in the history. * Fixed an issue with invalid backup groups being set correctly on restore. If the backup cannot map a group to a name it stores the group in the manifest as false then uses either the owner of $PGDATA to set the group during restore or failing that the group of the current user. This logic was not working correctly because the selected group was overwriting the user on restore leaving the group undefined and the user incorrectly set to the group. * Fixed an issue passing parameters to remotes. When more than one db was specified the path, port, and socket path would for db1 were passed no matter which db was actually being addressed. - Features: * Repository encryption support. - See http://www.pgbackrest.org/release.html#1.26 * d/control: Add libssl-dev to B-D. * d/tests: Fix error handling in "suite" test -- Adrian Vondendriesch Wed, 22 Nov 2017 22:11:32 +0100 pgbackrest (1.25-1) unstable; urgency=medium * New Upstream release: - Bug Fixes: * Fix custom settings for compress-level option being ignored. * Remove error when overlapping timelines are detected. Overlapping timelines are valid in many Point-in-Time-Recovery (PITR) scenarios. * Fix instances where database-id was not rendered as an integer in JSON info output. - Features: * Improve performance of list requests on S3. - See http://www.pgbackrest.org/release.html#1.25 * Bump Standards-Version to 4.1.1. -- Adrian Vondendriesch Wed, 25 Oct 2017 15:17:11 +0200 pgbackrest (1.24-1) unstable; urgency=medium * New Upstream release: - Bug Fixes: * Fixed an issue where warnings were being emitted in place of lower priority log messages during backup from standby initialization. * Fixed an issue where some db-* options (e.g. db-port) were not being passed to remotes. - Features: * Exclude contents of pg_snapshots, pg_serial, pg_notify, and pg_dynshmem from backup since they are rebuilt on startup. * Exclude pg_internal.init files from backup since they are rebuilt on startup. - See http://www.pgbackrest.org/release.html#1.24 -- Adrian Vondendriesch Fri, 29 Sep 2017 10:33:45 +0200 pgbackrest (1.23-1) unstable; urgency=medium * New Upstream release: - Bug Fixes: * Fixed an issue that could cause compression to abort on growing files. * Fixed an issue with keep-alives not being sent to the remote from the local process. - Features: * Up to seven standbys can be configured for backup from standby. * PostgreSQL 10 support. * Allow content-length (in addition to chunked encoding) when reading XML data to improve compatibility with third-party S3 gateways. - Refactoring: * Configuration rules are now pulled from the C library when present. * Increase HTTP timeout for S3. * Add HTTP retries to harden against transient S3 network errors. - See http://www.pgbackrest.org/release.html#1.23 -- Adrian Vondendriesch Mon, 04 Sep 2017 10:23:18 +0200 pgbackrest (1.22-1) unstable; urgency=medium * New Upstream release: - Retry after internal S3 errors - Changed info command output - Configurable ssh ports (--backup-ssh-port / --db-ssh-port) - See http://www.pgbackrest.org/release.html#1.21 as well as #1.22 -- Adrian Vondendriesch Thu, 10 Aug 2017 10:17:56 +0200 pgbackrest (1.20-1) unstable; urgency=medium * New Upstream release: - See http://www.pgbackrest.org/release.html#1.19 * Bump Standards-Version to 4.0.0. * Disable libc test on big-endian systems (Closes: #865545). The current test implementation doesn't work on big-endian systems. * Drop patches merged by upstream. -- Adrian Vondendriesch Wed, 28 Jun 2017 08:38:49 +0200 pgbackrest (1.19-1) unstable; urgency=medium * New Upstream release: - This release introduces S3 Support. - see http://www.pgbackrest.org/release.html#1.19 for more information. * d/rules: Run libc tests through dh_auto_test. * d/tests: Use -k to enable checksums for initdb in tests suite. * d/patches: Fix format in libc (%u vs %lu). * d/patches: Add upstream patch to fix libc alignment on 32 bit systems. -- Adrian Vondendriesch Sat, 15 Apr 2017 11:34:48 +0200 pgbackrest (1.18-1) unstable; urgency=medium * New Upstream release. See http://www.pgbackrest.org/release.html#1.18 * debian/tests: add a simple test suite. Thanks to Hendrik Siewert. -- Adrian Vondendriesch Thu, 13 Apr 2017 15:54:51 +0200 pgbackrest (1.17-2) experimental; urgency=medium * Build the C-library without a packlist to make the build reproducible. -- Adrian Vondendriesch Fri, 17 Mar 2017 22:32:04 +0100 pgbackrest (1.17-1) experimental; urgency=medium * New Upstream release. See http://www.pgbackrest.org/release.html#1.17 -- Adrian Vondendriesch Tue, 14 Mar 2017 07:59:05 +0100 pgbackrest (1.16-1) experimental; urgency=medium * New Upstream release. See http://www.pgbackrest.org/release.html#1.15. -- Adrian Vondendriesch Fri, 03 Mar 2017 11:33:02 +0100 pgbackrest (1.15-1) experimental; urgency=medium * New Upstream release. * Build and ship new C-Library * Change architecture from all to any -- Adrian Vondendriesch Sat, 11 Feb 2017 21:55:21 +0100 pgbackrest (1.12-1) unstable; urgency=medium * New Upstream release. * Update rules files to clean up build files. * Run wrap-and-sort. -- Adrian Vondendriesch Thu, 15 Dec 2016 10:30:19 +0100 pgbackrest (1.11-1) unstable; urgency=medium * New Upstream release. -- Adrian Vondendriesch Fri, 18 Nov 2016 08:16:24 +0100 pgbackrest (1.10-1) unstable; urgency=medium * New Upstream release. -- Adrian Vondendriesch Thu, 10 Nov 2016 17:30:43 +0100 pgbackrest (1.09-1) unstable; urgency=medium * New Upstream release. -- Adrian Vondendriesch Tue, 11 Oct 2016 09:01:49 +0200 pgbackrest (1.08-1) unstable; urgency=medium * New Upstream releaase. -- Adrian Vondendriesch Thu, 15 Sep 2016 10:12:21 +0200 pgbackrest (1.07-1) unstable; urgency=medium * New Upstream release. -- Adrian Vondendriesch Wed, 07 Sep 2016 14:39:04 +0200 pgbackrest (1.06-1) unstable; urgency=medium * New Upstream release. -- Adrian Vondendriesch Fri, 26 Aug 2016 11:58:18 +0200 pgbackrest (1.04-2) unstable; urgency=medium * Change postinst behaviour. Only set permissions if no prior version was installed. -- Adrian Vondendriesch Tue, 02 Aug 2016 11:34:57 +0200 pgbackrest (1.04-1) unstable; urgency=medium * New upstream release. -- Adrian Vondendriesch Sat, 30 Jul 2016 16:47:25 +0200 pgbackrest (1.03-1) unstable; urgency=medium * New upstream release. -- Adrian Vondendriesch Mon, 04 Jul 2016 07:54:34 +0200 pgbackrest (1.02-2) unstable; urgency=medium * Implicit use SOURCE_DATE_EPOCH in txt2man. Remove MANDATE. * Build docs with custom variable "html-footer" to get a reproducible build. -- Adrian Vondendriesch Mon, 20 Jun 2016 14:02:52 +0200 pgbackrest (1.02-1) unstable; urgency=medium [ Adrian Vondendriesch ] * New upstream release. * Drop patches included in upstream version. * Ship manpage based on upstream template. * Change owner of pgbackrest.conf to postgres. * Change architecture from any to all. * Modify package description. * Remove PostgreSQL version from stanza example. [ Christoph Berg ] * debian/tests: Add simple "version" test. -- Adrian Vondendriesch Mon, 13 Jun 2016 13:16:50 +0200 pgbackrest (1.01-1) unstable; urgency=medium * New upstream release. * Add libdbd-pg-perl to Depends. * Add postgresql-common to Depends. * Change owner of pgbackrest directories to postgres in postinst. * Bump standards version. * Create a pgbackrest-doc package which contains the html documentation. * Ship own manage. * patches: * add upstream sprintf patch * add upstream documentation patches -- Adrian Vondendriesch Wed, 01 Jun 2016 20:57:29 +0200 pgbackrest (1.00-1) unstable; urgency=medium * New upstream release. * Rename config file from pg_backrest.conf to pgbackrest.conf. -- Adrian Vondendriesch Tue, 03 May 2016 20:48:13 +0200 pgbackrest (0.9-1) unstable; urgency=medium * Initial release -- Adrian Vondendriesch Sun, 13 Mar 2016 17:29:17 +0100