+ Bug Fixes:
- Fix missing files corrupting the manifest. If a file was
removed by PostgreSQL during the backup (or was missing from
the standby) then the next file might not be copied and updated
in the manifest. If this happened then the backup would error
when restored.
+ Improvements:
- Use pkg-config instead of xml2-config for libxml2 build options.
- Validate checksums are set in the manifest on backup/restore.
- Introduce upstream_wrongly_bring_back_pg_config.patch to fix
upstream code (using pg_config in client code)
Upstream issue #920
OBS-URL: https://build.opensuse.org/package/show/server:database:postgresql/pgbackrest?expand=0&rev=29
- update to 2.19 : C Migrations and Bug Fixes
+ Bug Fixes:
- Fix remote timeout in delta restore. When performing a delta
restore on a largely unchanged cluster the remote could timeout
if no files were fetched from the repository within
protocol-timeout. Add keep-alives to prevent remote timeout.
- Fix handling of repeated HTTP headers. When HTTP headers are
repeated they should be considered equivalent to a single
comma-separated header rather than generating an error, which
was the prior behavior.
+ Improvements:
- JSON output from the info command is no longer pretty-printed.
Monitoring systems can more easily ingest the JSON without linefeeds.
External tools such as jq can be used to pretty-print if desired.
- The check command is implemented entirely in C.
+ Documentation Improvements:
- Document how to contribute to pgBackRest.
- Document maximum version for auto-stop option.
+ Test Suite Improvements:
- Fix container test path being used when --vm=none.
- Fix mismatched timezone in expect test.
- Don't autogenerate embedded libc code by default.
- Cleanup spec (license and pkgconfig)
OBS-URL: https://build.opensuse.org/request/show/754103
OBS-URL: https://build.opensuse.org/package/show/server:database:postgresql/pgbackrest?expand=0&rev=27
- Update to 2.18 version PostgreSQL 12 Support
+ Features:
- PostgreSQL 12 support.
- Add info command set option for detailed text output.
- Add standby restore type. This automatically adds
standby_mode=on to recovery.conf for PostgreSQL < 12
and creates standby.signal for PostgreSQL ≥ 12, creating a
common interface between PostgreSQL versions.
+ Improvements:
- The restore command is implemented entirely in C.
+ Documentation Improvements:
- Document the relationship between db-timeout and protocol-timeout.
- Add documentation clarifications regarding standby repositories.
- Add FAQ for time-based Point-in-Time Recovery.
- Update to 2.17 version C Migrations and Bug Fixes
+ Bug fixes:
- Improve slow manifest build for very large quantities of
tables/segments.
- Fix exclusions for special files.
+ Improvements:
- The stanza-create/update/delete commands are implemented entirely in C.
- The start/stop commands are implemented entirely in C.
- Create log directories/files with 0750/0640 mode.
+ Documentation Bug Fixes:
- Fix yum.p.o package being installed when custom package specified.
+ Documentation Improvements:
- Build pgBackRest as an unprivileged user.
OBS-URL: https://build.opensuse.org/request/show/735528
OBS-URL: https://build.opensuse.org/package/show/server:database:postgresql/pgbackrest?expand=0&rev=26
+ Bug Fixes:
Fix segfault when process-max > 8 for archive-push/archive-get.
+ Improvements:
Bypass database checks when stanza-delete issued with force.
Add configure script for improved multi-platform support.
+ Documentation Features:
Add user guides for CentOS/RHEL 6/7.
- 2.13 release
+ Bug Fixes:
Fix zero-length reads causing problems for IO filters that
did not expect them.
Fix reliability of error reporting from local/remote processes.
Fix Posix/CIFS error messages reporting the wrong filename on
write/sync/close.
- 2.12 release
+ IMPORTANT NOTE: The new TLS/SSL implementation forbids dots in
S3 bucket names per RFC-2818. This security fix is required for
compliant hostname verification.
+ Bug Fixes:
Fix issues when a path option is / terminated.
Fix issues when log-level-file=off is set for the archive-get
command.
Fix C code to recognize host:port option format like Perl does.
Fix issues with remote/local command logging options.
+ Improvements:
The archive-push command is implemented entirely in C.
Increase process-max limit to 999.
Improve error message when an S3 bucket name contains dots.
+ Documentation Improvements:
OBS-URL: https://build.opensuse.org/package/show/server:database:postgresql/pgbackrest?expand=0&rev=23
- Update to 2.11 release
+ C Implementation of Archive Get
+ Bug Fixes:
- Fix possible truncated WAL segments when an error occurs
mid-write.
- Fix info command missing WAL min/max when stanza specified.
- Fix non-compliant JSON for options passed from C to Perl.
+ Improvements:
- The archive-get command is implemented entirely in C.
- Enable socket keep-alive on older Perl versions.
- Error when parameters are passed to a command that does not
accept parameters.
- Add hints when unable to find a WAL segment in the archive.
- Improve error when hostname cannot be found in a
certificate.
- Add additional options to backup.manifest for debugging
purposes.
+ Documentation Improvements:
- Update default documentation version to PostgreSQL 10.
- Packaging:
+ Remove merge upstream patch (2cd204f.patch)
+ Fix install destination to %{_bindir}
- Include upstream patch 2cd204f.patch to fix issue#677
+ Fix check for improperly configured pg-path.
OBS-URL: https://build.opensuse.org/request/show/683736
OBS-URL: https://build.opensuse.org/package/show/server:database:postgresql/pgbackrest?expand=0&rev=22
- Include upstream patch 2cd204f.patch to fix issue#677
- Update to 2.10 version bug fixes
+ Add unimplemented S3 driver method required for archive-get.
+ Fix check for improperly configured pg-path.
- Packaging:
+ Fix trailing space in changes (jengelh)
+ Use a factual description (jengelh)
- Packaging: remove comments/remark fixed and merged issue #659
- Update to 2.08 version : bug fixes and improvement
- Update spec (date and order)
is ported to C
OBS-URL: https://build.opensuse.org/request/show/677608
OBS-URL: https://build.opensuse.org/package/show/server:database:postgresql/pgbackrest?expand=0&rev=21
- Update to 2.09 version bug fixes and improvements
+ Fix issue with multiple async status files causing a hard error.
+ info command is implemented entirely in C.
+ Simplify info command text message when no stanzas are present
by replacing the repository path with "the repository".
+ Add _DARWIN_C_SOURCE flag to Makefile for MacOS builds.
+ Update address lookup in C TLS client to use modern methods.
+ Include Posix-compliant header for strcasecmp() and fd_set.
- Packaging : remove comments/remark fixed and merged issue #659
- Update to 2.08 version : bug fixes and improvement
See more information https://pgbackrest.org/release.html
- Add libxml2-devel as buildrequires
- Add a comment about gethostbyname() upstream issue #659
- Update spec (date and order)
OBS-URL: https://build.opensuse.org/request/show/672999
OBS-URL: https://build.opensuse.org/package/show/server:database:postgresql/pgbackrest?expand=0&rev=20
- 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
OBS-URL: https://build.opensuse.org/request/show/622034
OBS-URL: https://build.opensuse.org/package/show/server:database:postgresql/pgbackrest?expand=0&rev=14
- Update to bugfix & improvement 2.02 version
Parallel Asynchronous Archive Get and Configuration Includes
Released May 6, 2018
- Changes of previous 2.01 version from March 6th 2018
- Packaging :
+ Use make install (now fixed upstream) for bin
old: server:database:postgresql/pgbackrest
new: home:bruno_friedmann:branches:server:database:postgresql/pgbackrest rev None
Index: pgbackrest.changes
===================================================================
--- pgbackrest.changes (revision 10)
+++ pgbackrest.changes (revision 3)
@@ -1,4 +1,91 @@
-------------------------------------------------------------------
+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 :
@@ -36,6 +123,8 @@
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
Index: pgbackrest.spec
===================================================================
--- pgbackrest.spec (revision 10)
+++ pgbackrest.spec (revision 3)
@@ -18,7 +18,7 @@
Name: pgbackrest
# Nobody can stop upstream to be too creative !
-Version: 2.00
+Version: 2.02
Release: 0
Summary: Reliable PostgreSQL Backup & Restore
License: MIT
@@ -53,6 +53,7 @@
%setup -q -n %{name}-release-%{version}
%build
+#TODO upstream doesn't care about RPM_OPT_FLAGS
pushd src
make V=1 %{?_smp_mflags}
popd
@@ -70,9 +71,7 @@
install -D -d -m 0755 %{buildroot}%{_sysconfdir}
install %{SOURCE1} %{buildroot}/%{_sysconfdir}/%{name}.conf
cp -a lib/* %{buildroot}%{perl_vendorlib}/
-# Upstream makefile is nonsense sudo so use install
-# make install -C src DESTDIR=%%{buildroot}
-install -m 0755 src/%{name} %{buildroot}%{_bindir}/%{name}
+make install -C src DESTDIR=%{buildroot}
make pure_vendor_install -C libc DESTDIR=%{buildroot}
%perl_process_packlist
%perl_gen_filelist
Index: 2.02.tar.gz
===================================================================
Binary file 2.02.tar.gz (revision 3) added
Index: 2.00.tar.gz
===================================================================
Binary file 2.00.tar.gz (revision 10) deleted
OBS-URL: https://build.opensuse.org/request/show/606763
OBS-URL: https://build.opensuse.org/package/show/server:database:postgresql/pgbackrest?expand=0&rev=11
Note for reviewer, could you check the build flags : it seems
that what upstream use is not the quality of our normal C build.
- 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
OBS-URL: https://build.opensuse.org/request/show/585100
OBS-URL: https://build.opensuse.org/package/show/server:database:postgresql/pgbackrest?expand=0&rev=10
- 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.)
- 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
OBS-URL: https://build.opensuse.org/request/show/572427
OBS-URL: https://build.opensuse.org/package/show/server:database:postgresql/pgbackrest?expand=0&rev=9