=======
CHANGES
=======

LP# refers to holland launchpad bugs here: 
http://bugs.launchpad.net/holland-backup

GH# referes to the deprecated github bug tracker here:
https://github.com/holland-backup/holland/issues

1.0.10 - Jul 29, 2013
---------------------

holland
+++++++
- Added purge-on-demand option to [holland:backup]
  If set, this option will cause holland backup to attempt to purge old backups
  to allow a new backup to start rather than failing when it appears that
  there is insufficient space to run a new backup.
  If the space consumed by all purgable backups is less than the estimated
  space for a new backup, no backups are purged.

holland-common
++++++++++++++
- FLUSH TABLES is now run as FLUSH /*!40101 LOCAL */ TABLES to avoid
  replicating this statement.  This affects any plugins that issue flush
  tables via the holland-common mysql client API

- [compression] config sections now support an additional parameter
  "options".  This extends the commandline for the underlying compression
  command.  This was added to allow specifying command specific options
  such as gzip --rsyncable or pigz -p N.
  

holland-mysqldump
+++++++++++++++++
- dump-events now defaults to on - automatically disabled for MySQL < 5.1
- dump-routines now defaults to on - automatically disabled for MySQL < 5.0
- when no databases are found during schema discovery, mysqldump now fails
  with a backup error.  This can occur if the configured backup user does
  not have sufficient access to any database.

1.0.8 - Mar 7, 2013
-------------------

holland
+++++++
- Fixed bug in purge-policy=before-backup that would fail to retain the
  in-progress backup and ultimately cause the backup run to fail.
- Added before/after/failed backup command options to [holland:backup] for 
  each backupset. Contributed by osheroff
- Fixed a bug in holland.conf [logging] handling where the log-level would be
  ignored in favor of the default value for holland --log-level.
- holland mk-config now adds a default estimated-size-factor to the 
  [holland:backup] section.
- holland purge now correctly updates symlinks when run manually

holland-common
++++++++++++++

- pbzip2 is now a supported compression option.  This is valid for any holland
  plugins that use the internal holland compression command api.
  Contributed by justino

holland-mysqldump
+++++++++++++++++
- Fix bug with holland backup --dry-run and mysqldump plugin's stop-slave=yes
  option.  The slave would be incorrectly stopped in dry-run mode, but never
  restarted.
- Fixed a bug with estimate-method=const where lock-method=auto-detect would
  not properly detect when to set single-transaction because table engine
  information was not read.
- Plugin estimate method now ignores MRG_MyISAM and Federated tables when
  estimating the total backup space in order to avoid counting tables twice.
- Fixed a bug in my.cnf parsing code that did not treat my.cnf sections case
  insenstiviely.  This differed from the mysqldump behavior

holland-mysqllvm
++++++++++++++++
- Fixed a bug in the relpath implementation where paths relative to / were not
  properly calculated.  This was a bug in os.path.relpath in python <= 2.6:
  http://bugs.python.org/issue5117.  Backported the fix from python 2.7
- Fix a bug in tar archiver that was not closing the output stream at the end
  of a backup.
- Added pre- and post-args to [tar] config to allow customizing options to GNU
  tar used for archiving mysql-lvm backups.
- LVM plugins now detect when they cannot correctly backup innodb data.
  mysql-lvm will abort by default if any innodb data files reside outside the
  datadir. mysqldump-lvm will rewrite innodb-data-file-path,
  innodb-data-home-dir and innodb-log-group-home-dir in order to startup the
  bootstrap mysqld process correctly.
- added force-innodb-backup option to force a mysql-lvm backup even if it
  appears unsafe to do so.  InnoDB datafiles outside of the datadir are not
  backed up by default unless tar's pre- and/or post-args are set correctly.
- added force-backup-to-snapshot-origin option to disable sanity check when
  holland's backup-directory is set to store backups on the same volume we are
  currently snapshotting.

holland-xtrabackup
++++++++++++++++++
- The xtrabackup plugin now fails more cleanly when the innbackupex command
  could not be found
- The xtrabackup plugin now handles failures in closing the output stream more
  gracefully.
- Updated xtrabackup plugin to support xtrabackup 2.0
- Added stream=xbstream support
- Added support for streaming=no to perform a simply directory copy backup
- Added tmpdir option - previously tmpdir was taken from the my.cnf
  defaults-file
- Added an additional-options = option, option, option for specifying
  arbitrary options to innobackupex
- Added ibbackup=path option
- Added pre-command=command option
- Added safe-slave-backup=boolean option
- Added apply-logs=boolean option


1.0.6 - Jan 12, 2011 
--------------------

holland
+++++++
- holland backup better differentiates between a dry-run and normal backup
  in logging output
- holland mk-config now produces cleaner output and includes a --minimal
  option to strip comments from the backupset output.
- holland now more elegantly handles running the same backupset more than
  once per second.  Previously this could result in a stack trace as the
  backupset directory already exists.
- holland now maintains newest and oldest symlinks in each backupset
  directory pointing to the newest and oldest backup.
  (Contribution from Micah Yoder)
- holland.conf now accepts a tmpdir option for environments where
  manipulating TEMPDIR environment variable is not convenient
- holland backup --help is now consistent with holland help backup
  (Fixes LP#677716)
- holland now warns about unknown options in config files
- The example plugin has been deprecated in favor of the holland-random
  plugin, which provides a more useful starting example
- previously when logging failed (disk space, permissions, etc.) a stack
  trace would be printed on stderr.  As of 1.0.6 this is only done in when
  the logging level is set to 'debug'
- holland backup --dry-run previously failed for mysqldump backups when 
  per-table exclusions were specified. (Fixes GH#60)
- config files are now read as utf8 (Fixes GH#57)


holland-mysqldump
+++++++++++++++++
- holland-mysqldump now only stops the SQL_THREAD when stop-slave is 
  requested
- error messages from MySQLdb are now decoded from utf8 as necessary
- holland-mysqldump now defaults max-allowed-packet to 128M
- holland-mysqldump now excludes performance_schema by default
- holland-mysqldump now more reliably parses my.cnf files specified via
  defaults-extra-files


holland-mysqllvm
++++++++++++++++
- when a volume group has zero free extents, an unhandled exception would be
  thrown due to a bug in formatting the error message (Fixed LP#699795)
- holland-mysqllvm had a bug in the example config file that would always
  maintain two backups
- holland-mysqllvm now catches SIGHUP/SIGTERM more consistently
- holland-mysqllvm logs error output from various commands more consistently
- holland-mysqllvm will not create snapshot-mountpoint if it does
  not exist (Fixes LP#671965)
- holland-mysqllvm previously failed to automatically mount xfs snapshots
  with nouuid.  This is now automatically detected (Fixes GH#61)
- additional tests for ext3 and xfs filesystems were added to holland.lib.lvm


holland-xtrabackup
++++++++++++++++++
- holland-xtrabackup now logs stderr output on a backup failure. Previously
  this was only logged to xtrabackup.log in the backup directory.
  (Fixes LP#671971)
- holland-xtrabackup should now be built by default in contrib/holland.spec


holland-sqlite
++++++++++++++
- add missing inline compression option.


holland-pgdump
++++++++++++++
- Added holland-pgdump plugin (Contribution from Micah Yoder)


