Barman 1.3.0 released

2 minute read

2ndQuadrant is proud to announce the release of version 1.3.0 of Barman, Backup and Recovery Manager for PostgreSQL.

This major release has a new code infrastructure in terms of output, subprocesses, remote commands, file system, events (‘hooks’) and metadata management, making the application more robust.

Barman 1.3.0 introduces a few configuration options for:

  • managing hook scripts before and after archiving a WAL file
  • network compression of remote backup, and
  • recovery operations and immediate checkpoint at backup time

Administrators can now force a rebuild of the xlog.db file (WAL archive) through the 'barman rebuild-xlogdb' command.

This major version now correctly handles those tablespaces that had been created inside the PGDATA directory, removing content duplication.

Remote recovery code has been improved in order to behave exactly like local recovery does, including preparation of the directories layout (PGDATA and tablespaces).

Minor bugs have also been fixed.

Many thanks for funding towards the development of this release go to Ecometer (, Agile Business Group ( and a French company (that prefers to remain anonymous).

For a complete list of changes, see the “Release Notes” section below.


Release notes

  • Refactored BackupInfo class for backup metadata to use the new FieldListFile class (infofile module)
  • Refactored output layer to use a dedicated module, in order to facilitate integration with Nagios (NagiosOutputWriter class)
  • Refactored subprocess handling in order to isolate stdin/stderr/stdout channels (command_wrappers module)
  • Refactored hook scripts management
  • Extracted logging configuration and userid enforcement from the configuration class.
  • Support for hook scripts to be executed before and after a WAL file is archived, through the 'pre_archive_script' and 'post_archive_script' configuration options.
  • Implemented immediate checkpoint capability with --immediate-checkpoint command option and 'immediate_checkpoint' configuration option
  • Implemented network compression for remote backup and recovery through the 'network_compression' configuration option (#19)
  • Implemented the 'rebuild-xlogdb' command (Closes #27 and #28)
  • Added deduplication of tablespaces located inside the PGDATA directory
  • Refactored remote recovery code to work the same way local recovery does, by performing remote directory preparation (assuming the remote user has the right permissions on the remote server)
  • 'barman backup' now tries and create server directories before attempting to execute a full backup (#14)
  • Fixed bug #22: improved documentation for tablespaces relocation
  • Fixed bug #31: 'barman cron' checks directory permissions for lock file
  • Fixed bug #32: xlog.db read access during cron activities


About Barman: Barman (Backup and Recovery Manager) is an open source administration tool for disaster recovery of PostgreSQL servers written in Python. It allows your organisation to perform remote backups of multiple servers in business critical environments and help DBAs during the recovery phase. Barman’s most requested features include backup catalogues, retention policies, remote recovery, archiving and compression of WAL files and backups.

Barman is distributed under GNU GPL 3.