Received: by mail.netbsd.org (Postfix, from userid 605) id 77D3385089; Tue, 14 Aug 2018 14:47:58 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by mail.netbsd.org (Postfix) with ESMTP id 6F69885081 for ; Tue, 14 Aug 2018 14:47:57 +0000 (UTC) X-Virus-Scanned: amavisd-new at netbsd.org Received: from mail.netbsd.org ([IPv6:::1]) by localhost (mail.netbsd.org [IPv6:::1]) (amavisd-new, port 10025) with ESMTP id PEHfj3O4rMMQ for ; Tue, 14 Aug 2018 14:47:55 +0000 (UTC) Received: from cvs.NetBSD.org (ivanova.NetBSD.org [IPv6:2001:470:a085:999:28c:faff:fe03:5984]) by mail.netbsd.org (Postfix) with ESMTP id 7293D84D4A for ; Tue, 14 Aug 2018 14:47:55 +0000 (UTC) Received: by cvs.NetBSD.org (Postfix, from userid 500) id 6149BFBEC; Tue, 14 Aug 2018 14:47:55 +0000 (UTC) Content-Transfer-Encoding: 7bit Content-Type: multipart/mixed; boundary="_----------=_1534258075132110" MIME-Version: 1.0 Date: Tue, 14 Aug 2018 14:47:55 +0000 From: "Adam Ciarcinski" Subject: CVS commit: pkgsrc/databases/py-barman To: pkgsrc-changes@NetBSD.org Reply-To: adam@netbsd.org X-Mailer: log_accum Message-Id: <20180814144755.6149BFBEC@cvs.NetBSD.org> Sender: pkgsrc-changes-owner@NetBSD.org List-Id: pkgsrc-changes.NetBSD.org Precedence: bulk List-Unsubscribe: This is a multi-part message in MIME format. --_----------=_1534258075132110 Content-Disposition: inline Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="UTF-8" Module Name: pkgsrc Committed By: adam Date: Tue Aug 14 14:47:55 UTC 2018 Modified Files: pkgsrc/databases/py-barman: Makefile PLIST distinfo pkgsrc/databases/py-barman/patches: patch-barman_utils.py Log Message: py-barman: updated to 2.4 Version 2.4: - Add standard and retry hook scripts for backup deletion (pre/post) - Add standard and retry hook scripts for recovery (pre/post) - Add standard and retry hook scripts for WAL deletion (pre/post) - Add --standby-mode option to barman recover to add standby_mode = on in pre-generated recovery.conf - Add --target-action option to barman recover, allowing users to add shutdown, pause or promote to the pre-generated recovery.conf file - Improve usability of point-in-time recovery with consistency checks (e.g. recovery time is after end time of backup) - Minor documentation improvements - Drop support for Python 3.3 Relevant bug fixes: - Fix remote get_file_content method, preventing incremental recovery from happening - Unicode issues with command - Add --wal-method=none when pg_basebackup >= 10 Minor bug fixes: - Stop process manager module from ovewriting lock files content - Relax the rules for rsync output parsing - Ignore vanished files in streaming directory - Case insensitive slot names - Make DataTransferFailure.from_command_error() more resilient - Rename command() to barman_command() - Initialise synchronous standby names list if not set - Correct placeholders ordering - Force datestyle to iso for replication connections - Returns error if delete command does not remove the backup - Fix exception when calling is_power_of_two(None) - Downgraded sync standby names messages to debug Version 2.3: - Add support to PostgreSQL 10 - Follow naming changes in PostgreSQL 10: - The switch-xlog command has been renamed to switch-wal. - In commands output, the xlog word has been changed to WAL and location has been changed to LSN when appropriate. - Add the --network-compression/--no-network-compression options to barman recover to enable or disable network compression at run-time - Add --target-immediate option to recover command, in order to exit recovery when a consistent state is reached (end of the backup, available from PostgreSQL 9.4) - Show cluster state (master or standby) with barman status command - Documentation improvements - Bug fixes: - Fix high memory usage with parallel_jobs > 1 - Better handling of errors using parallel copy - Make barman diagnose more robust with system exceptions - Let archive-wal ignore files with .tmp extension Version 2.2: - Implement parallel copy for backup/recovery through the parallel_jobs global/server option to be overridden by the --jobs or -j runtime option for the backup and recover command. Parallel backup is available only for the rsync copy method. By default, it is set to 1 (for behaviour compatibility with previous versions). - Support custom WAL size for PostgreSQL 8.4 and newer. At backup time, Barman retrieves from PostgreSQL wal_segment_size and wal_block_size values and computes the necessary calculations. - Improve check command to ensure that incoming directory is empty when archiver=off, and streaming directory is empty when streaming_archiver=off - Add external_configuration to backup_options so that users can instruct Barman to ignore backup of configuration files when they are not inside PGDATA (default for Debian/Ubuntu installations). In this case, Barman does not display a warning anymore. - Add --get-wal and --no-get-wal options to barman recover - Add max_incoming_wals_queue global/server option for the check command so that a non blocking error is returned in case incoming WAL directories for both archiver and the streaming_archiver contain more files than the specified value. - Documentation improvements - File format changes: - The format of backup.info file has changed. For this reason a backup taken with Barman 2.2 cannot be read by a previous version of Barman. But, backups taken by previous versions can be read by Barman 2.2. - Minor bug fixes: - Allow replication-status to work against a standby - Close any PostgreSQL connection before starting pg_basebackup - Safely handle paths containing special characters - Archive .partial files after promotion of streaming source - Recursively create directories during recovery - Improve xlog.db locking - Remove tablespace_map file during recover - Reconnect to PostgreSQL if connection drops Version 2.1: - Add --archive and --archive-timeout options to switch-xlog command - Preliminary support for PostgreSQL 10 - Minor additions: - Add last archived WAL info to diagnose output - Add start time and execution time to the output of delete command - Minor bug fixes: - Return failure for get-wal command on inactive server - Make streaming_archiver_names and streaming_backup_name options global - Fix rsync failures due to files truncated during transfer - Correctly handle compressed history files - Avoid de-referencing symlinks in pg_tblspc when preparing recovery - Fix comparison of last archiving failure - Avoid failing recovery if postgresql.conf is not writable - Fix output of replication-status command - Exclude files from backups like pg_basebackup - Exclude directories from other Postgres versions while copying tablespaces - Make retry hook script options global Version 2.0 - 27 Sep 2016 - Support for pg_basebackup and base backups over the PostgreSQL streaming replication protocol with backup_method=postgres (PostgreSQL 9.1 or higher required) - Support for physical replication slots through the slot_name configuration option as well as the --create-slot and --drop-slot options for the receive-wal command (PostgreSQL 9.4 or higher required). When slot_name is specified and streaming_archiver is enabled, receive-wal transparently integrates with pg_receivexlog, and check makes sure that slots exist and are actively used - Support for the new backup API introduced in PostgreSQL 9.6, which transparently enables concurrent backups and backups from standby servers using the standard rsync method of backup. Concurrent backup was only possible for PostgreSQL 9.2 to 9.5 versions through the pgespresso extension. The new backup API will make pgespresso redundant in the future - If properly configured, Barman can function as a synchronous standby in terms of WAL streaming. By properly setting the streaming_archiver_name in the synchronous_standby_names priority list on the master, and enabling replication slot support, the receive-wal command can now be part of a PostgreSQL synchronous replication cluster, bringing RPO=0 (PostgreSQL 9.5.5 or higher required) - Introduce barman-wal-restore, a standard and robust script written in Python that can be used as restore_command in recovery.conf files of any standby server of a cluster. It supports remote parallel fetching of WAL files by efficiently invoking get-wal through SSH. Currently available as a separate project called barman-cli. The barman-cli package is required for remote recovery when get-wal is listed in recovery_options - Control the maximum execution time of the check command through the check_timeout global/server configuration option (30 seconds by default) - Limit the number of WAL segments that are processed by an archive-wal run, through the archiver_batch_size and streaming_archiver_batch_size global/server options which control archiving of WAL segments coming from, respectively, the standard archiver and receive-wal - Removed locking of the XLOG database during check operations - The show-backup command is now aware of timelines and properly displays which timelines can be used as recovery targets for a given base backup. Internally, Barman is now capable of parsing .history files - Improved the logic behind the retry mechanism when copy operations experience problems. This involves backup (rsync and postgres) as well as remote recovery (rsync) - Code refactoring involving remote command and physical copy interfaces - Bug fixes: - Correctly handle .history files from streaming - Fix replication-status on PostgreSQL 9.1 - Fix replication-status when sent and write locations are not available - Fix misleading message on pg_receivexlog termination To generate a diff of this commit: cvs rdiff -u -r1.9 -r1.10 pkgsrc/databases/py-barman/Makefile cvs rdiff -u -r1.3 -r1.4 pkgsrc/databases/py-barman/PLIST cvs rdiff -u -r1.8 -r1.9 pkgsrc/databases/py-barman/distinfo cvs rdiff -u -r1.2 -r1.3 \ pkgsrc/databases/py-barman/patches/patch-barman_utils.py Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. --_----------=_1534258075132110 Content-Disposition: inline Content-Length: 4283 Content-Transfer-Encoding: binary Content-Type: text/x-diff; charset=us-ascii Modified files: Index: pkgsrc/databases/py-barman/Makefile diff -u pkgsrc/databases/py-barman/Makefile:1.9 pkgsrc/databases/py-barman/Makefile:1.10 --- pkgsrc/databases/py-barman/Makefile:1.9 Mon Feb 20 17:00:35 2017 +++ pkgsrc/databases/py-barman/Makefile Tue Aug 14 14:47:55 2018 @@ -1,9 +1,9 @@ -# $NetBSD: Makefile,v 1.9 2017/02/20 17:00:35 wiz Exp $ +# $NetBSD: Makefile,v 1.10 2018/08/14 14:47:55 adam Exp $ -DISTNAME= barman-1.6.1 +DISTNAME= barman-2.4 PKGNAME= ${PYPKGPREFIX}-${DISTNAME} CATEGORIES= databases python -MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=pgbarman/} +MASTER_SITES= ${MASTER_SITE_PYPI:=b/barman/} MAINTAINER= filip@joyent.com HOMEPAGE= http://www.pgbarman.org/ @@ -12,12 +12,14 @@ LICENSE= gnu-gpl-v3 DEPENDS+= ${PYPKGPREFIX}-argcomplete-[0-9]*:../../devel/py-argcomplete DEPENDS+= ${PYPKGPREFIX}-argh>=0.21.2:../../devel/py-argh -DEPENDS+= ${PYPKGPREFIX}-psycopg2-[0-9]*:../../databases/py-psycopg2 DEPENDS+= ${PYPKGPREFIX}-dateutil-[0-9]*:../../time/py-dateutil +DEPENDS+= ${PYPKGPREFIX}-psycopg2>=2.4.2:../../databases/py-psycopg2 DEPENDS+= rsync-[0-9]*:../../net/rsync USE_LANGUAGES= # none +PYTHON_SELF_CONFLICT= yes + CONF_FILES+= share/examples/barman/barman.conf \ ${PKG_SYSCONFDIR}/barman.conf INSTALLATION_DIRS+= share/examples/barman Index: pkgsrc/databases/py-barman/PLIST diff -u pkgsrc/databases/py-barman/PLIST:1.3 pkgsrc/databases/py-barman/PLIST:1.4 --- pkgsrc/databases/py-barman/PLIST:1.3 Fri Mar 4 16:55:45 2016 +++ pkgsrc/databases/py-barman/PLIST Tue Aug 14 14:47:55 2018 @@ -1,4 +1,4 @@ -@comment $NetBSD: PLIST,v 1.3 2016/03/04 16:55:45 fhajny Exp $ +@comment $NetBSD: PLIST,v 1.4 2018/08/14 14:47:55 adam Exp $ bin/barman ${PYSITELIB}/${EGG_INFODIR}/PKG-INFO ${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt @@ -26,9 +26,15 @@ ${PYSITELIB}/barman/compression.pyo ${PYSITELIB}/barman/config.py ${PYSITELIB}/barman/config.pyc ${PYSITELIB}/barman/config.pyo +${PYSITELIB}/barman/copy_controller.py +${PYSITELIB}/barman/copy_controller.pyc +${PYSITELIB}/barman/copy_controller.pyo ${PYSITELIB}/barman/diagnose.py ${PYSITELIB}/barman/diagnose.pyc ${PYSITELIB}/barman/diagnose.pyo +${PYSITELIB}/barman/exceptions.py +${PYSITELIB}/barman/exceptions.pyc +${PYSITELIB}/barman/exceptions.pyo ${PYSITELIB}/barman/fs.py ${PYSITELIB}/barman/fs.pyc ${PYSITELIB}/barman/fs.pyo Index: pkgsrc/databases/py-barman/distinfo diff -u pkgsrc/databases/py-barman/distinfo:1.8 pkgsrc/databases/py-barman/distinfo:1.9 --- pkgsrc/databases/py-barman/distinfo:1.8 Mon Jun 6 14:56:16 2016 +++ pkgsrc/databases/py-barman/distinfo Tue Aug 14 14:47:55 2018 @@ -1,7 +1,7 @@ -$NetBSD: distinfo,v 1.8 2016/06/06 14:56:16 fhajny Exp $ +$NetBSD: distinfo,v 1.9 2018/08/14 14:47:55 adam Exp $ -SHA1 (barman-1.6.1.tar.gz) = 2b09600edc95c0a048fbe17369f3f3d5d8fa9bae -RMD160 (barman-1.6.1.tar.gz) = 134a653269af28fcb1d6e337e828a8bd49d9a4e2 -SHA512 (barman-1.6.1.tar.gz) = 621a328a61c7676b0d6e0b09666feb2f16fa88e05f17157a873c3323f160de0ca4aaf1b9920134d9ddb560d468afebe5705c7dc3063396e1b201a82a752a3bc2 -Size (barman-1.6.1.tar.gz) = 189826 bytes -SHA1 (patch-barman_utils.py) = 725e8d6b4531dbfcb1e75d25059fc4af5744d49d +SHA1 (barman-2.4.tar.gz) = 5e9155175bca31362aca26e90d605574a404e66c +RMD160 (barman-2.4.tar.gz) = df28084c5122d8ea654c3773af0202658ad6ec3b +SHA512 (barman-2.4.tar.gz) = ef316de7cae7f41d95894892b260e1cc67f62866c6feaf03acd96391ab07d9eb27ea7fd6cb472743cbd56658dde24718ac0892ba2280706098f4bdd14b5674d1 +Size (barman-2.4.tar.gz) = 997651 bytes +SHA1 (patch-barman_utils.py) = 0f93835a814bdd41c999dcebb34719312a74bd94 Index: pkgsrc/databases/py-barman/patches/patch-barman_utils.py diff -u pkgsrc/databases/py-barman/patches/patch-barman_utils.py:1.2 pkgsrc/databases/py-barman/patches/patch-barman_utils.py:1.3 --- pkgsrc/databases/py-barman/patches/patch-barman_utils.py:1.2 Fri Mar 4 16:55:45 2016 +++ pkgsrc/databases/py-barman/patches/patch-barman_utils.py Tue Aug 14 14:47:55 2018 @@ -1,6 +1,7 @@ -$NetBSD: patch-barman_utils.py,v 1.2 2016/03/04 16:55:45 fhajny Exp $ +$NetBSD: patch-barman_utils.py,v 1.3 2018/08/14 14:47:55 adam Exp $ Make portable for non-glibc platforms too. + --- barman/utils.py.orig 2016-02-22 08:01:31.000000000 +0000 +++ barman/utils.py @@ -253,7 +253,7 @@ def fsync_dir(dir_path): --_----------=_1534258075132110--