Release Notes for Bacula 1.31 Bacula code: Total files = 251 Total lines = 74,714 (*.h *.c *.in) Major Changes this Release: - The database format has changed. Please see below. - Support to save and restore all files on WinNT/2K/XP systems including the permissions. Unfortunately files that are in use by another program cannot be saved. - Support for Win95 systems (untested since I don't have Win95). - Heartbeat every 20 minutes between daemons to prevent network timeouts. The heartbeat interval can be set. - Volume names may now only contain letters, numbers, colon, period, dash, and underscore. - Added readline to depkgs (removed from depkgs1) and fixed configuration if it is not installed in your system libraries. - Implemented generalized tape label formats including counter variables for automatic naming of Volumes. - Multiple simultaneous jobs now work. - Implemented tape block rejection, which means that restores with several incremental backups will run orders of magnitude faster. Other Changes this Release: - Restore checks block numbers to ensure that no block is lost. - The new console var command allows testing variable expansion used in automatic tape name generation. - The new console estimate command allows you to test FileSets to see how many files and bytes will be saved and optionally to have an "ls -l" style listing of the files. - During a normal restore (replace = yes), any existing file is deleted and the restored file is then created. This corrects links and other wierd files that changed between the backup and the restore. - Preliminary support for BSDi. - Use smtp instead of mail to send the traceback message. - Fixed a race condition in the "list" command while a backup is in progress. - Improvements to gnome-console. - Prune orphaned jobs (no files saved, no Volume used). - Added non-fatal errors to Job reports. - Eliminate need for SubsysDirectory in each daemon -- please remove these records from your .conf files. - Add a lot more "command line" options to console commands. - More info in traceback (database type, ...). - Better handling of errors with autochangers during restore. - Better cancellation of jobs in Storage daemon (doesn't try to cleanup twice). - Better cancellation of File daemon (except on Cygwin systems). - SD error messages such as autochanger errors are now properly directed back to Console -- previously some were lost. - A Storage daemon crash on FreeBSD systems (due to a different FreeBSD pthreads implementation) is fixed. - Better Job termination report particularly for Verify and Restore jobs. - Update Verify VolumeToCatalog to use new BSR records. - Fixed list last 20 jobs in restore command (previously reported any 20 jobs). - Gnome command line history works better. - Better messages if a job is upgraded from Diff or Inc to Full. - Replaced FileSet MD5 with date created -- more aestetic and readable. - Fixed a FD crash on long directory names (Win32 specific). Items to note: !!!!! - Recycle Oldest Volume has changed to be Purge Oldest Volume Please change your Director's .conf file. - The default time interval is now days instead of seconds. Please check your .conf files! - For MySQL users, you must have the thread safe client libraries available. If you build MySQL yourself, add the --enable-thread-safe-client option on the ./configure. You will most likely need to do an ldconfig. Please see the installation documentation for building MySQL. - Version 1.31 and 1.30 daemons/Director are not compatible. You must upgrade all or nothing. - The format of the catalog database has changed, so you must either re-initialize your database (losing all the old info) with: ./drop_bacula_tables ./make_bacula_tables or you can use the appropriate script (you must choose the name according to which database you have) in the /src/cats directory. BEFORE APPLYING THE ALTER SCRIPT PLEASE BACKUP YOUR DATABASE. If you have previously upgraded to version 1.31, please do not run this procedure a second time. Do one of the following only if you wish to keep your old tables (not doing the re-initialize documented above), and do this only after configuring an building the new Bacula, but before trying to run it: MySQL: cd working-directory (or where you want to backup the catalog) mysqladmin -f --opt bacula >bacula.sql cd /src/cats ./alter_mysql_tables SQLite: cd working-directory echo '.dump' sqlite bacula.db >bacula.sql cd /src/cats ./alter_sqlite_tables When you are sure that Bacula is running with your upgraded database, please delete the bacula.sql copy you made.