Release Notes for Bacula Community 9.0
CommunityRelease 9.0.8 28 May 2018
This is a minor release that fixes a couple of bugs and corrects some copyrights that were not totally correct.
Fix bug #2212 where restore jobid=nn file=xxx restores the files twice
Pull regression truncate-test from Branch-9.1
Apply patch from Wandlei Huttel to add Run Time and suffix to Restored bytes
Fix bug #2343 where truncate of explicit Volume name truncates non-purged volumes
Fix some file execute permissions. Fixes bug #2389
Fix license problems in Bug #2382
Apply patch from Leo to fix bug 2192
Fix bad placement of jcr->pool reference as pointed out by Martin Simmons
rpm: Add OpenSuse Leap 42.3
rpm: Update bacula.spec for Fedora 27
baculum: Fix SQL grouping error in restore wizard reported by Rasmus Linden
Update some old copyrights
baculum: Update Portuguese translations
Remove old Bacula Systems notices
Bugs fixed/closed since last release: 2212 2320 2349 2354 2379 2382 2383 2330 2054 2343 2369 2194 2359 2151 2366 2353 2381 2378
Release 9.0.7 18 Apr 2018
This is a significant release because it now has the Windows code reintegrated and updated to work with this version. Other than Baculum updates and the new Windows update, there is no significant change to the other code.
If you wish to use the Windows 9.0.7 File daemon binaries with your existing 9.0.x Bacula Director and Storage daemon it should work fine but has not been tested.
The 64 bit version of the Windows binaries has been installed and very quickly tested, as a consequence, please test it carefully before putting into production. There seem to be some minor installation errors that are probably related to .conf files. Also the Windows binaries do not yet contain the tray-monitor or the old Exchange plug. Both currently fail to build.
Remove NSIS debug
baculum: Fix opening configuration tabs bug reported by Heitor Faria
Restore win32 dir from Branch-5.2 and update it
Add Phil Stracchino’s fix for Qt5
baculum: Fix saving boolean values in schedule Run directive
rpm: Add Fedora26-64 platform
baculum: Add link to go back from job configuration window
Use correct SQL table encoding for Postgresql 10.x
baculum: Add listbox control and use it for base and device directives
baculum: Fix showing verify job fields in job run configuration window
baculum: Revert back volume pool name in volume list window
baculum: Fix error message about disabled bconsole
baculum: API endpoints code refactor
baculum: Add state, number, boolean and id validators
baculum: Return bconsole disabled error if bconsole support isn’t enabled
baculum: Remove unused api endpoints
baculum: Fix oauth2 client working in the web part
baculum: Fix auth setting radio buttons alignement
baculum: Enlarge interface height to 100%
baculum: Add more information to cURL error
baculum: New reworked restore wizard
baculum: Wizards view improvements
baculum: Add restore hardlinks support in api
baculum: Add strip_prefix, add_prefix, add_suffix and regex_where restore options to api restore
Port missing RestoreObject Plugin Config code from BEE.
baculum: Stop using hidden fields to store item identifiers
baculum: Fix redundant loading users portlet
baculum: Add required config fields asterisk mark
Bugs fixed/closed since last release: None
Release 9.0.6 19 Nov 2017
This is a bug fix and enhancement release. The two major enhancements are support for Qt5 in bat and the tray monitor, and support for OpenSSL-1.1. There were also a number of nice bug fixes. Thanks to the users who supplied patches for the enhancements and bug fixes. They are much appreciated.
Update AUTHORS for recent commits
Remove incorrecly placed openssl-compat.h
Add openssl-compat.h which went in wrong directory
baculum: Add removing single resource
baculum: Add module to check resource dependencies
baculum: Fix saving names with spaces inside schedule Run directive
baculum: Fix saving entire config by api request
Backout vol size tests in previous attempt to fix bug #2349
Fix compiler warning in previous patch
Apply patches from bugs #2325 and #2326 to fix FIFO bugs
Fix bug #2315 INTEGER misspelled in update_sqlite3_tables.in
Try to fix bug #2349 multiple recycle messages
Add support for items with comma in ini_store_alist_str()
Fix segfault after the reload of an incorrect configuration
Add temporary fix to avoid a deadlock after a reload command on an incorrect configuration
baculum: Throw 404 error if service not known
Fix race condition between setip and the access to CLIENT::address()
Fix #3284 about Client address not reloaded properly
baculum: Use home page url when an error is shown
Fix bug #2346 Dir blocks when max reloads reached
baculum: Send config to api server as json
Remove enterprise code that breaks Mac install – fixes bug #2351
Correct FS size calculation for FreeBSD, Solaris, and Windows
baculum: Enable Portuguese language support in makefile
baculum: Fix required directives in schedule resource configuration
baculum: Fix saving messages resource
baculum: Improve slow reloading config resource list
crypto: remove most of OpenSSL initcallbacks for 1.1
Update ACL/XATTR code and define new ACL/XATTR API for Plugins.
baculum: Fix numeric password setting bug reported by Heitor Faria
crypto: convert EVP_PKEY access and remainings bits for OpenSSL 1.1
crypto: convert EVP_MD_CTX + EVP_CIPHER_CTX to OpenSSL 1.1
crypto: Use DEFINE_STACK_OF()
crypto: Add a tiny OpenSSL compat level
crypto: remove support for ancient openssl
fix #3269 obey the user choice of “Are you sure you want to delete X JobIds
Add restore wizard to the tray monitor.
Preparation fixes: remove some warning
Add ASSERTD() to track NULL Volume name error
Add “noautoparent” restore command option to disable the automatic parent
directory selection
Make qt-console compatible to Qt5 (Qt4 still work)
Bugs fixed/closed since last release: 2315 2325 2346 2349 2351
Release 9.0.5 11 Sep 2017
This is an important bug fix release. In particular it fixes the cases where Bacula would print a very large number of error messages. Additional backported code from Bacula Enterprise is included as well as updates to the rpm scripts. A number of minor Baculum issues have also been corrected.
01 Nov 2017
Use if exists on dropping MAC table in postgres. Fixes bug #2314
Fix bdirjson display of Minutes. Fixes bug #2318
baculum: Set default language if no language set
baculum: Fix language setting in api
baculum: Update generated .mo files for api
baculum: Add missing texts to translations
baculum: Fix add to translation static texts on the api default page
baculum: Fix missing session start
Make verify job log same as other logs – fixes bug #2328
Take a more conservative approach for setting killable true
Add extra safety for readdir buffer
31 Oct 2017
Retab systemd/Makefile.in
Don’t require mount for @piddir@
Use Debian systemd start/stop scripts supplied by Sven Hartge
29 Oct 2017
Fix bug #2316 add CacheRetention to Pool
Skip tape ioctls on FreeBSD when using a FIFO fixes bug #2324
Fix bug #2338 to not truncate already truncated volumes
Remove some old C int code and use bool
28 Oct 2017
Remove unused lib/lz4.c.orig file
Update AUTHORS file
Mark Volume read-only only if no access rights or read-only partition
Add -P daemon option to supress creating PID file
Fix too big copy to test FD plugin_ctx
26 Oct 2017
Backport Enterprise code
23 Oct 2017
When read-only volume found mark it in catalog – fixes bug #2337
Make out of space on partition fatal
Fix bug 2323 – loop exit condition was backward and add error message
Add missing copy-plugin-confs for regress
Fix bug reported by jesper@schmitz.computer where bat hangs on FreeBSD
08 Oct 2017
baculum: Fix reading and writing schedule resource
15 Sep 2017
baculum: Fix undefined offset error during saving director config
baculum: Fix listing days of week in schedule setting
14 Sep 2017
baculum: Fix saving schedule run directive value
12 Sep 2017
rpm: Add missing script baculabackupreport and query.sql for Suse
rpm: Add missing libbacsd* file and tapealert script to Suse rpm spec file
rpm: Add missing libs bbconsjson, bdirjson and bsdjson to Suse rpm spec
file
rpm: Add aligned plugin rpm spec file for Suse
rpm: Add bacula-tray-monitor.desktop launcher in scripts directory
rpm: Add Suse Linux ES 12.1 platform
11 Sep 2017
rpm: Add bacula-tray-monitor.desktop file in script dir
Bugs fixed/closed since last release: 2314 2316 2318 2324 2328 2337 2338
Release 9.0.4 06 Sep 2017
This is a minor bug fix release. The main fix in this release is to allow SQLite3 to work.
Please note: SQLite3 has been depreciated for a long time. If the community will step forward (as it did in this case) and prepare the appropriate make_sqlite3_tables and update_sqlite3_tables files, we can continue to leave the SQLite3 code in Bacula. However, we strongly urge users to update to MySQL, MariaDB, and PostgreSQL, which are our supported SQL databases.
Update po files
Fix SQLite3 upgrade tables script fixes bug #2306
baculum: Fix language setting in config file
Upgrade to latest lz4.c to fix bug #2310 bus error on 64 bit Solaris
Recompile configure.in
Ensure systemd/bacula.conf is created by configure fixed bug #2307
Fix compiler warning noted in bug #2309
Fix SQLite3 Version bug #2305
Remove unused variable to elimiate compiler warning
Recompile configure.in
Fix #2925 Do not try to stop non backup jobs (virtualfull, copy, migration,
restore, etc…)
baculum: Fix broken symbolic links for lang files
don’t use add_event() when flag “l” is not set
core: bwlimit measure bandwidth
core: bwlimit handle backlog and allow burst
Do not purge running jobs in autoprune
Bugs fixed/closed since last release: 2305 2306 2307 2309 2310 2925
Release 9.0.3 08 Aug 2017
This is a minor bug fix release.
baculum: Fix access denied error on api install wizard page
baculum: Remove assigning to api host when user is deleted
baculum: Fix empty admin setting
baculum: Add ability to assign host to specific user
baculum: Fix bconsole test connection for new api host that works with new director
baculum: Fix sqlite db support
Fix bug #2301 Solaris Available space incorrectly reported by turning off the output for Solaris
Fix bug #2300 mount/unmount/release of single tape drive does not work
baculum: Fix bconsole connection test in config wizard
baculum: Fix writing config for schedule and message names with space
bpipe: Fix compiler warning
baculum: Fix drag & drop file version elements
baculum: Add fileset info endpoint and use it in restore wizard
baculum: Use client name instead of clientid and start using fileset to prepare restore tree
baculum: Remove fileset parameter from run restore
baculum: Fix lstat regex pattern
baculum: Get the most recent jobs by client and fileset or by clientid and filesetid
Fix: bug #3048: jobs are stuck in endless loop in reserve.c
Add total time to test.out file
baculum: Add restore job selection in restore job wizard
Enhance verify job report from bug 2249
Bugs fixed/closed since last release: 2300 2301 3048
Release 9.0.2 23 Jul 2017
This is a minor bug fix release, but a few of the bugs are important. The main items fixed are:
Postgresql should now work with Postgresql prior to 9.0 Note: the ssl connection feature added in 9.0 is not available on postgresql servers older than 9.0 (it needs the new connection API).
The issues with MariaDB (reconnect variable) are now fixed
The problem of the btape “test” command finding a wrong number of files in the append test was a bug. It is now fixed. It is unlikely that it affected anything but btape.
The bacula-tray-monitor.deskop script is released in the scripts directory.
We recommend that you build with libz and lzo library support (the developer packages must be installed when building, and the shared object libraries must be installed at run time). However we have modified the code so that Bacula should build and run with either or both libz or lzo absent.
Use Bacula in place of Libz variables so we can build with/without libz and lzo
Apply ideas from bug #2255 prettier status slots output
Configure and install bacula-tray-monitor.desktop
Fix btape test which counted files incorrectly on EOT
Fix bug #2296 where Bacula would not compile with postgres 8 or older
Fix bug #2294 Bacula does not build with MariaDB 10.2
baculum: Fix multiple directors support
baculum: Fix showing errors from the API
Bugs fixed/closed since last release: 2255 2294 2296
Release 9.0.1 12 Jul 2017
This is a minor bug fix release that mainly to include the new tray-monitor files that were omitted. The tray-monitor now builds and runs at least on Ubuntu Linux.
Remove two incorrect trailing commas in bsock.h
Fix bug #2293 bad big endian detection in lz4.c
Add new tray-monitor files that were omitted in the backport from Enterprise
bvfs: Do not insert deleted directories in PathVisibility table
Fix compilation for Debian Stretch with GCC 6.3
Bugs fixed/closed since last release: 2293
Release 9.0.0 02 Jul 2017
This is either the biggest Bacula release ever made or one of the biggest ones. Even without the new Aligned Volumes source code, which is substantial, there are over 400,000 lines of diff output between Release 7.4.7 and the release of 9.0.0
This is a major new release with a new version number. It has been very thoroughly tested, but as always, please backup any previous version and test this version prior to putting it into production.
For the most part the changes were contributed to the Bacula project by Bacula Systems SA and myself, but there were a number of other contributors that I thank.
Database Update
This version of Bacula requires a database update. So either you or the installation process must apply the update_bacula_tables script. As a precaution, please do a database dump or run your nightly database backup prior to running the update script.
Compatibility
As always, both the Community Director and Storage daemon(s) must be upgraded at the same time. Any File daemon running on the same machine as a Director or Storage daemon must be of the same version.
Older File Daemons should be compatible with the 9.0.0 Director and Storage daemons. There should be no need to upgrade older File Daemons.
Packagers
There are a good number of new binaries (e.g. bbconsjson, bdirjson, bfdjson, and bsdjson) to install; a new tapealert script file that should be installed; and some new shared objects (e.g. libbacsd). The dvd-handler script has been removed. Note also to run the update_bacula_tables script after having dumped the catalog to bring any existing catalog up to the new version needed for Bacula 9.0.0.
New Features
Please see the New Features chapter of the manual for documentation on the new features. The new features are currently only in the New Features chapter and have not yet been integrated into the main chapters of the manual.
New Features (summary)
Major rewrite of the Storage daemon to: put all drivers in class structures, provide better separation of core/driver code, add new drivers (aligned volumes, cloud), simplifies core code, allows loadable device drivers much like plugins but which are better integrated into the SD.
There are a number of new Bacula Systems whitepapers available on www.bacula.org, and a few more will be coming in the next few months.
New unique message id will be added to every message (designed but not yet implemented).
Core Features:
Implement a drive usage counter to do round robin drive assignment
Enhance functionality of TapeAlert
Implement a “Perpetual Virtual Full” feature that creates a Virtual Full backup that is updated every day
Increase Director’s default “Maximum Concurrent Jobs” setting from 1 to 20
Add “PluginDirectory” by default in bacula-sd.conf and bacula-fd.conf
Add support for terabytes in sizes. Submitted by Wanderlei Huttel.
Restore mtime & atime for symlinks
New “status network” command to test the connection and the bandwidth between a Client and a Storage Daemon
New Tape Alert tracking
Loadable SD device drivers
PostgeSQL SSL connections permitted
JobStatistics improved
DB update required
Autochanger improvements to group Devices
Improved .estimate command
Comm line compression
Separate bxxjson programs for Console, Dir, FD, SD to output .conf contents in Json for easier reading with programs
Read Only storage devices
Bconsole Features:
Add “ExpiresIn” field in list and llist media output
Add command to change the priority of a running job (update jobid=xxx priority=yyy)
Add level= and jobtype= parameters to the “list jobs” command
Add option to bconsole to list and select a specific Console
Add shortcut to RunScript console commands. Submitted by Wanderlei Huttel.
Display “IgnoreFileSetChanges” in show fileset command (#2107)
Display PrefixLinks in “show job” output
Display permission bits in .bvfs_decode
Display the Comment field in “llist job” command
Add “ActionOnPurge” field to “llist pool” command. Fix #2487
Add “long” keyword to list command, ie “list long job”. This is essentially an alias fo the “llist” command.
Modify the “setbandwidth” limit parameter to accept speed input. ex: limit=10kb/s
Modify the “setbandwidth” limit parameter so that the default is no longer kb/s but b/s.
Do not show disabled resources in selection list
Fix bconsole readline and “dumb” terminal handling of CTRL-C
Add the priority field to the .api 2 job listing output
Improved restricted consoles when accessing catalog.
Misc Features:
New Tray Monitor program
Client Initiated Backups
Many performance enhancements
Bandwidth limitation timing improved
Global resource variables are not lost during a reload command
Add -w option to btape to specify a working directory
Enhance bls -D/-F help message
The “list” command now filters the results using the current Console ACLs
The WhereACL is now verified after the restore menu
Skip verify-data-test if not running Linux
Skip lzo-test if lzo not in Bacula
Remove double define HAVE_LZO in config.h
Add documentation on baculabackupreport to delete_catalog_backup.in
Install baculabackupreport and ignore script without .in
Recompile configure.in
Add Bill’s baculabackupreport script
Update po files
Fix error in FreeBSD during maxtime-test
Fix #2853 About character substitution for “virtual full” job level in RunAfterJob
Attempt to fix timing problem with console-dotcmd-test on FreeBSD
Ensure we have a DIR connection in dequeue_messages
Add more debug to regress for FreeBSD failures
Fix #2940 Allow specific Director job code in WriteBootstrap directive
Fix pragma pack to allow lz4.c work on Solaris and other machines
baculum: Fix working logout button
A more correct fix for lz4.c on Solaris 10
Remove use of #pragma pack in lib/lz4.c for Solaris 10
Recompile configure from configure.in
Detect Solaris 10
Fix bug #2289 version 7.9 not compatible with old FDs – comm compression
Make getmsg.c compatible with old FDs
Use one MAX_BLOCK_SIZE and set to 20M
rpm: Add Fedora 25 build platform
Remove vestiges of crc32_bad – fixes Solaris build
Fix #2890 about segfault in .status command on Redhat 5 32bit
Add missing semi-colon in bsys.c
baculum: Fix incorrect table name error during restore start
Display the correct address in lockdump for db_lock()
Fix getmsg to handle additional forms of Progress messages
baculum: Fix double assets and runtime symbolic links in baculum-web deb package
baculum: Fix missing php-xml dependency in deb metafile
baculum: Improve errors handling in API restore pages
rpm: Remove libbacsd.la for both Red Hat and Suse
rpm: Add missing libs bbconsjson, bdirjson and bsdjson
rpm: Fix libstdc++ version in BAT spec file
Fix some problems noted by clang
baculum: Reorganize run job code
baculum: Reorganize estimate job code
baculum: Make get method definition not obligatory
Make file-span-vol-test portable
Attempt to fix deadlock in FreeBSD maxtime-test
Do not produce error if MySQL database exists in create_mysql_database
rpm: Add missing tapealert script
rpm: Add missing libbacsd
rpm: Remove dvd-handler script
Fix bvfs queries
Use FileId in place of Filename
Revert “Put FilenameId in .bvfs_lsfiles output”
Put FilenameId in .bvfs_lsfiles output
Add more debug in src/cats/bvfs.c
Fix bvfs_lsdirs and bvfs_lsfiles
baculum: Add Japanese language support in deb and rpm packages
Add DirectoryACL directive
baculum: New Baculum API and Baculum Web
Add forking info to LICENSE and LICENSE-FAQ
Minor improvement to error message
Fix race in steal_device_lock shown in truncate-concurrent-test
Apply Marcin’s fix for 6th week of the month
Add new truncate test
Retab Makefile.in in platforms/systemd.in
Fix compiler warning
Add FD backwards compatibility
Fix regression minor scripting problems
Fix #2807 about an issue with the show command when using incorrectly JobToVerify directive
Fix #2806 about the director service started before the database with systemd
Update Dart control files
Massive (70,000+ lines) backport of code from Bacula Enterprise 8.8. See next line …
Adapt update_bacula_tables scripts for catalog version 15
Allow to use Base directive in a JobDefs
Add more debug to the bpipe plugin
Enhance error message when packets are too big
Add ‘.storage unique’ bconsole command
Allow to use “.jobs type=!B” to display specific job type
Add lockdump storage daemon information
Fix #2698 Display loaded driver list in status storage output
Fix autochanger unload message that contains sometime an incorrect volume name
Fix issue with open_bpipe() function that may flush stdio buffer if the command is incorrect
Fix unload tape messages to print correct volume + improve output format
Fix unload/re-load same volume
Fix DIR get unexpected “Connection reset by peer” for FD
Fix #2548 about SQL connection leak with RunScript::Console commands
Fix #2588 about segfault in bdirjson with JobDefs/Base directive
Fix #2593 about incomplete jobs incorrectly rescheduled
Fix #2629 about pool argument not listed in the “help cloud” output
Fix #2632 about VolType not set correctly for Cloud volumes after a label problem
Fix #2640 about a reference to the source directory in query.sql file
Fix bug #2271 where poll interval causes tape mount message to repeat
Fix segfault in bdirjson with incorrect configuration files
Bugs fixed/closed since last release: 2271 2548 2563 2567 2588 2593 2602 2624 2625 2627 2629 2632 2638 2640 2646 2698 2520 2559 2561 2582 2806 2807 2890 2289 2890 2853 2940
See also
Previous articles:
Next articles:
Go back to: Bacula Community Release Notes.