]> git.sur5r.net Git - bacula/bacula/blob - bacula/ReleaseNotes
Tweak correct typos in ReleaseNotes
[bacula/bacula] / bacula / ReleaseNotes
1
2                Release Notes for Bacula 5.2.4
3
4   Bacula code: Total files = 1,110 Total lines = 231,439 (Using SLOCCount)
5
6 General:
7 --------
8 The 5.2.4 version is an bug fix release.
9
10 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
11 If you are upgrading directly from 5.0.3 to this version, please see the
12 important notices below for version 5.2.3, particularly
13 the database upgrade and the difference in packaging the
14 SQL shared libraries.
15 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
16
17 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
18 If you store .bsr or .mail files in the Bacula working
19 directory, please be aware that they will all be deleted
20 each time the Director starts.
21 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
22
23 Compatibility:
24 --------------
25  As always, both the Director and Storage daemon must be upgraded at
26  the same time.
27
28  Older 5.0.x and 3.0.x File Daemons are compatible with the 5.2.3
29  Director and Storage daemons. There should be no need to upgrade older File
30  Daemons.
31
32 Most important changes since 5.2.3:
33 - Fix LZO detection so that it correctly detects presense of header
34   files.
35 - Switch the way we handle shared object versioning.
36 - Backport Enterprise spec files to platforms/rpms
37 - Switch to using Qt 4.7.4 (you must download new 
38   depkgs-qt-24Dec11.tar.gz
39 - Update depkgs to depkgs-24Dec11.tar.gz
40 - Enhancements to File daemon and Storage daemon plugins
41 - Compiler warning cleanups
42 - xattr fixes
43 - Cleanup old files in the working directory when the Director starts
44
45 Changes since 5.2.3:
46
47 18Jan12
48  - Prepare for adding IPv6 to Windows in the future
49  - Fix bug #1822 Schedule run line parsing fails if value is keyword
50  - Revert to 5.0 size computation in accurate elements, may fix #1821
51  - Mark that a file was found in the accurate list in the ff_pkt with a
52    variable
53  - Definitive fix for MySQL MaxValue problem bug #1810
54  - Initialize delta_seq to -1 because 0 means that we have already a version
55  - Adapt bfileview for bvfs tables
56  - Set job status to running when restore job really starts
57  - Remove ifdeffing that turned off JS_Warning status -- must have been missed 
58   test code
59  - Add support for soname setting in libtool.
60  - Fix bug #1815
61  - Fix systemd pid files.
62  - Limit migration/copy jobs to starting 100 at a time
63  - Avoid conflict with PAGE_SIZE define
64  - Send previous Job name during Incremental/Differential to the FD
65  - Fix bug #1811 Filed fails to backup more then one xattr.
66  - system.posix_acl_default is also an acl stored as xattr
67  - Fix bug #1807
68  - Add configure for new redhat spec files
69  - Backport Enterprise spec files
70  - Fix bad memset() reported by clang
71  - Test new plugin function in bpipe and test plugin
72  - Try to fix openssl problem with signal
73  - Add BSOCK::set_killable()
74  - Set directory attributes when using Replace=Never when Bacula creates them
75  - Use RestoreObject type in Catalog
76  - Add new features in plugin
77  - Add helper for ini files
78  - Implement run accurate=yes/no
79  - Add .bvfs_clear_cache
80  - Add Accurate and MaxRunSchedTime in Schedule resource
81  - Fix bug #1802 configure code to detect LZO is broken
82  - Fix bug #1806 failure to save second and more xattr.
83  - Add second xattr to show bug 1806
84  - Fix seg fault in plugin event loop
85  - Fix #3210 about slow restore with bvfs
86
87 Bugs fixed/closed since last release:
88 1802 1806 1807 1810 1811 1815 1821 1822 3210
89
90
91 ==============================================================
92
93 General:
94 --------
95 The 5.2.3 version is an bug fix release.
96
97 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
98 If you are upgrading directly from 5.0.3 to this version, please see the
99 important notices below for version 5.2.2, particularly
100 the database upgrade and the difference in packaging the
101 SQL shared libraries.
102 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
103
104 Compatibility:
105 --------------
106  As always, both the Director and Storage daemon must be upgraded at
107  the same time.
108
109  Older 5.0.x and 3.0.x File Daemons are compatible with the 5.2.3
110  Director and Storage daemons. There should be no need to upgrade older File
111  Daemons.
112
113 Changes since 5.2.2:
114
115  - Revert patch from Ben to not compress man pages on Solaris fix #1801
116  - Fix bug #3322 don't poll when operator is labeling tapes
117  - bvfs: Fix mysql REGEXP operator
118  - Fix Mysql 5.5.18 symbol lookup
119  - fix utf8/iso8859 problems
120  - Fix #3419, update stats problem
121  - Fix cats_test to use the new method names.
122  - Update accurate code to use 1 byte instead of 3
123  - Fix segfault in accurate code
124  - Fix compilation warning on FreeBSD
125
126 Bugs fixed/closed since last release:
127 1801 3322 3419
128
129
130 ================================================================
131 Version 5.2.2
132
133 General:
134 --------
135 The 5.2.2 version is an important bug fix release. It contains also some
136 additions and performance improvements. 
137
138 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
139 If you are upgrading directly from 5.0.3 to this version, please see the
140 important notices below for version 5.2.1, particularly
141 the database upgrade and the difference in packaging the
142 SQL shared libraries.
143 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
144
145 Compatibility:
146 --------------
147  As always, both the Director and Storage daemon must be upgraded at
148  the same time.
149
150  Older 5.0.x and 3.0.x File Daemons are compatible with the 5.2.2
151  Director and Storage daemons. There should be no need to upgrade older File
152  Daemons.
153
154 Changes since 5.2.1:
155 -----------------
156  - Implement -t option for Bat
157  - Require correct Qt version 4.6.2 or later to build bat
158  - Get new lib/plugins.h
159  - Pull new SD plugin files from Master
160  - Fix script to set mode of cats scripts
161  - Add Systemd configure options
162  - Split messages line by line before sending it to syslog() fix #3325
163  - Fix bvfs_restore on MySQL
164  - Fix #3308 where a SMTP problem can block the director
165  - Change locking scheme of the mountpoint cache.
166  - Enhance mountcache with rescan option after interval.
167  - Add %D option to edit_job_code, simplify callbacks on director side
168  - Move Zdeflate and Zinflate to seperate file.
169  - Put libraries in the correct order for non shared libs.
170  - Remove last traces of @SQL_BINDIR@ and @DB_TYPE@
171  - Fix bug #1774
172  - Move batch insert detection into db.m4
173  - bat: try to fix offset button problem when clicking too much on previous
174  - bvfs: Use single transaction for each job during update
175  - Add missing bwild & bregex man8 pages
176  - Fix compilation issue of wx-console #1778
177  - bvfs: fix filter for pattern= bvfs parameter
178  - Improve speed of BVFS with SQLite, Thanks to J.Starek
179  - bvfs: add clear_cache function
180  - bvfs: Handle windows drive when building path hierarchy
181
182 Closed Bugs Since 5.2.1
183 -----------------------
184 1774 1778 3308 3325
185
186
187 ================================================================
188
189 Version 5.2.1
190
191 The 5.2.1 version is a major release since the last version 5.0.3.
192 It includes well over 299,387 lines of changes made by 20 contributors,
193 lots of bug fixes (see below), 1,851 software commits,and a 
194 number of important new features:
195
196 Version 5.2.0 was short lived, because Marco (thanks) found
197 a number of last minute bugs. So the first official release of 5.2
198 is 5.2.1.
199
200 Compatibility:
201 --------------
202  As always, both the Director and Storage daemon must be upgraded at
203  the same time.
204
205  Older 5.0.x and 3.0.x File Daemons are compatible with the 5.2.1
206  Director and Storage daemons. There should be no need to upgrade older File
207  Daemons.
208
209 5.2.1 New Features:
210 -----------------
211 - LZO Compression
212 - New Tray Monitor
213 - Purge Migration Job
214 - Changes in Bvfs (Bacula Virtual FileSystem)
215 - Changes in the Pruning Algorithm
216 - Ability to Verify any specified Job
217 - Additions to RunScript variables
218 - Additions to the Plugin API
219 - ACL enhancements
220 - XATTR enhancements
221 - Class Based Database Backend Drivers
222 - Hash List Enhancements
223
224 Some of the above are described below; all the above are
225 described in more detail in the New Features chapter of the
226 manual.
227
228 Closed Bugs since 5.0.3:
229 ---------------------
230 1389 1444 1448 1466 1467 1468 1476 1481 1486 1488 1493 1494 1497 1499 1501
231 1502 1504 1509 1511 1513 1516 1524 1526 1527 1532 1536 1538 1541 1542 1549
232 1551 1553 1554 1558 1559 1560 1564 1567 1568 1569 1571 1574 1577 1581 1582
233 1584 1587 1594 1595 1600 1601 1602 1603 1604 1606 1608 1610 1612 1623 1624
234 1633 1643 1648 1655 1661 1664 1666 1669 1672 1675 1684 1685 1695 1696 1699
235 1700 1703 1735 1741 1749 1751 1761 1762 1764 1768 1770 1771 2710
236
237 Note on bug 1612 where Bacula does not save a checksum for hard links during
238 full backup, but expects one during accurate differential backups. You need
239 a Full backup with the 5.2.x code to have these checksums in the Catalog.
240 Doing Incr/Diff over a 5.0.x Full backup will still display lot of errors.
241
242
243
244 ================== Warning !!!!!! ==========================
245
246  The new pruning algorithm will not allow pruning of jobs that are essential to
247  restore since the last Full backup. This is, of course, correct and desirable,
248  but it is different from older Bacula versions that could inappropriately
249  prune jobs. Pruning of volumes is not affected.
250
251 Building Bat:
252 -------------
253 To build Bat, you need Qt4 version 4.6.2.  If you build with any other
254 version it is likely not to work.  If you do not have version 4.6.2, on
255 your system, you can download the Bacula depkgs_qt version 16Dec10.
256
257 Packaging the SQL backend:
258 --------------------------
259 The main Bacula Director code is independent of the SQL backend
260 in this version. This means that the Bacula Director can be packaged
261 by itself, then each of the different SQL backends supported can
262 be packaged separately.  It is possible to build all the DB backends
263 at the same time.
264
265 - configure can be run with multiple database configure options.
266    --with-sqlite3
267    --with-mysql
268    --with-postgresql
269
270 Order of testing for database is
271 - postgresql
272 - mysql
273 - sqlite3
274
275 Each configured backend generates a libbaccats-<backend_name>-<version>.so
276 A dummy catalog library is created named libbaccats-version.so
277
278 At configure time the first detected backend is used as the so called default
279 backend and at install time the dummy libbaccats-<version>.so is replaced with
280 the default backend type.
281
282 If you configure all three backends you get three backend libraries and the
283 postgresql gets installed as the default.  When you want to switch the default
284 you can copy one of the three backend libraries over the
285 libbaccats-<version>.so e.g.
286
287 cp libbaccats-postgresql-<version>.so libbaccats-<version>.so
288
289 And update the default backend in the following files:
290
291 create_bacula_database
292 drop_bacula_database
293 drop_bacula_tables
294 grant_bacula_privileges
295 make_bacula_tables
296 make_catalog_backup
297 update_bacula_tables 
298
299 New Catalog format in version 5.2.0 and greater
300 -----------------------------------------------
301 This release of Bacula uses a new catalog format. We provide a set of
302 scripts that permit to convert a 5.0.x (version 12) catalog to 5.2.1 (version
303 14).  The Bacula project rpm spec files have been modified to
304 detect the database change and do the upgrade for you.  We strongly
305 recommend that you save a copy of your existing database before upgrading
306 using rpms.
307
308 The simplest way to upgrade the database assuming you are building from
309 source (i.e. manually):
310 1. Stop any current version of Bacula from running.
311 2. Save a copy of your existing database.
312 3. Configure, build, and install the 5.2.1 version of Bacula
313    Note the new ./configure options in the manuals see the link
314    at the bottom of this file.
315 4. cd <your-scripts-installation-directory>
316 5. ./update_bacula_tables
317 6. If you have multiple catalogs, edit the update_bacula_tables
318    script and put the name of another database, and then
319    execute the script again. Repeat this until all Bacula
320    catalogs have been updated.
321 7. Start the new Bacula.  If everything worked, it should
322    not print any error messages.
323
324 If you start from scratch, you don't need to run the update_bacula_tables
325 script because the create_bacula_tables script automatically creates the new
326 table format.  However, if you are using a version of Bacula older than 5.0.0
327 (e.g.  3.0.3) then you need to run the update_bacula_tables script that will
328 be found in the <bacula>/src/cats directory after you run the ./configure
329 command.  As mentioned above, before running this script, please backup your
330 catalog database, and when you do running it, be sure shutdown Bacula and be
331 aware that running the script can take some time depending on your database
332 size.
333
334 ================================================================
335
336 Changes:
337
338 Speed and Memory Usage Enhancements:
339 - Implement LZO compression algorithm (need lzo2 headers to activate this option)
340 - New Pruning algoritm -- safer and faster
341 - Use of PostgreSQL cursor when doing large queries, should reduce the
342   memory usage during restore and accurate backups.
343 - limit command in some list commands
344 - Bacula Virtual File System for fast catalog access
345 - Faster crc32 algorithm
346
347 Security Enhancements:
348 - Additional security against injection of illegal characters
349 - Fix possible fnmatch problem
350
351 Features Enhancements:
352 - Improvements in ACL and xattr handling on additional platforms:
353   AIX, Darwind, FreeBSD, HPUX, IRIX, Solaris, Tru64
354 - Tray monitor for Windows
355 - New SQL backend and ./configure that permits building multiple catalog
356   backends in one build, and has the main Bacula core code totally independent
357   of the SQL backend, which should simplify packaging (only the
358   libbacsql.so/dll needs to be changed to switch from one database backend
359   to another (e.g. MySQL to PostgreSQL).
360 - Indent lsmark during restore
361 - Disable batch insert config item
362 - Director selection option in bconsole
363 - restorejob command in bconsole
364 - Many additional features for bat such as "brestore" panel
365 - The old bat version browser has been turned off since it does not
366   work correctly and the brestore panel provides the same functionality
367 - Improved hash table for hard links
368 - Additional script variable editing such as %b (JobBytes), %F (JobFiles) 
369   and %h (Client Address)
370
371 Other Enhancements:
372 - Includes better handling for Windows repares points, mount points, and 
373   junction points.
374 - New database format
375 - Many new plugin API features
376 - Improved memory handling for restores
377 - Significant stability enhancements to bat
378 - xattr/ACL restore failure are now printed as Warning
379 - A few path name length limits in Windows have been removed.
380
381
382 ===========================================================================
383
384 The 5.0.3 version is significant bug fix update to version 5.0.2.
385 It includes new code and some new features.
386 There is no database change since prior versions of 5.0.
387
388 Note, if you are running 5.0.0, read the 5.0.1 and 5.0.2 release notes below in
389   the 5.0.1 release section.
390   Important!!!
391
392 Compatibility:
393 --------------
394  As always, both the Director and Storage daemon must be upgraded at
395  the same time.
396
397  Older 5.0.x and 3.0.x File Daemons are compatible with the 5.0.3
398  Director and Storage daemons. There should be no need to upgrade older File
399  Daemons.
400
401 Changes and New Features:
402 - If a VSS (Windows) snapshot fails, the whole Job is failed, previously
403   it printed a warning message and continued.
404 - New editing codes %b = Job Bytes and %f = Job Files for runscripts
405 - Any non-Bacula project plugins (i.e. third party plugins) 
406   must be upgraded to specify AGPLv3 in place of the GPLv2 used previously 
407   for the PLUGIN_LICENSE.
408 - The bat Media page text columns can be sorted by clicking on the column.
409 - If possible, the SD will automatically update the catalog Volume size if 
410   it does not match the Volume size. The mismatch between the Volume sizes
411   typically occurs when the FD has a comm line drop or the FD crashes.
412
413
414 Bug fixes
415 1538 1554 1564 1567 1568 1569 1571 1577 1581 1582 1587 1594 1595 1606 1610
416
417 - Change license from GPLv2 to AGPLv3
418 - Make Win32 no filesystem change more explicit
419 - Backport Branch-4.0 release to Branch-5.0
420 - Massive backport from Branch-5.1 to Branch-5.0
421 - Fix postgresql catalog creation when version is not on the first line
422 - Fix bug #1610 handle empty xattr values on Linux and xBSD.
423 - Garbage collect memory pool at end of job and before sm_dump
424 - Add xattr seg fault protection suggested by Marco for bug #1610
425 - Add archlinux to os.m4
426 - More fixes for 32/64 bit problems in smartall
427 - Fix 32/64 bit problem in smartalloc dump routine
428 - Fix bad copy/paste in commit c88dccb88 prably a seg fault
429 - Add .dump and .exit commands for daemons
430 - Make SD automatically fix the Volume size in the Catalog when out of sync
431 - Use Pmsg in smartall.c rather than printf for tracing Windows
432 - Up maximum block size to 20M
433 - Fix for TLS bugs #1568 and #1599
434 - Improve comm line error handling for TLS, may fix bug #1568 and #1599
435 - Fix problem when sending Cancel event to plugin
436 - Convert all Jmsg on the watchdog thread to Qmsg
437 - Fix SD crash due to mismatched lock/unlock in error condition
438 - Fix bug #1587 if you have clients with different catalogs configured, both 
439   catalogs contains all clients after a reload or restart of the dir
440 - Fix bug #1577 During migration: ERROR in block.c:950 Failed ASSERT: dev->is_open() 
441   by moving and commenting out the ASSERT()
442 - Skip HB kill in FD if HB thread terminated
443 - Fix crash from unequal volume_lock/unlock calls
444 - New prunning algorithm -- should be more accurate
445 - Save any dumps during regression to dumps directory
446 - Fix crash from rw_lock/unlock miss match
447 - Attempt to fix duplicate job kill seg fault
448 - Replace pthread_kill by my_thread_send_signal() in jcr.c
449 - fix #1595 about batch mode detection problem for postgresql with non standard 
450   install dir
451 - Fix #1594 about prune copy jobs
452 - Apply literal string fix in printf submitted by Luca Berra
453 - Fix bug #1582 Restore from multiple storage daemons breaks subsequent backups
454 - Fix segfault on "cancel jobid=" command
455 - Fix bug #1554 Windows installer doesn't honor /S flag
456 - Remove pool zap code that breaks 2drive-concurrent-test
457 - Fix #1571 and install libraries with 755 perms
458 - Fix bug #1581 ASSERTs in src/dird/jobq.c can never trigger
459 - Fix problem with BaseJob and Accurate FileSet options on client side
460 - Fix for bug #1569 deadlock/crash in Dir
461 - Fix segfault when loading Plugins
462 - Fix #1567 about display of long volume names truncated during restore
463 - Added new bacula-libs package.
464 - Fix bug #1538 Start Scripts return incorrect value
465 - Fix bug #1564 init scripts not LSB compliant
466
467 See ChangeLog for more details.
468
469 =============================================================================
470
471
472 ============= Release 5.0.2 ========================
473
474 Changes since 5.0.1
475 -------------------
476
477 Bug fixes
478 1502 1511 1517 1524 1527 1532 1536 1541 1549 1551 1553 1559 1560
479
480 - Probable fix for SD crash bug #1553
481 - Fix #1559 problem when restoring pruned jobs with a regexp
482 - Fix for bug #1560 bcopy cannot find Volume
483 - Fix cancel crash bug #1551
484 - Check if sql backend is thread-safe
485 - Correct Pool display in SD status. Fixes bug #1541
486 - Fix cancel crash reported by Stephen Thompson
487 - Rewind on close to fix #1549
488 - Remove closelog() in bpipe fixes bug #1536
489 - Fix #1517 about missing Base level in .level command
490 - Replace ASSERT in block.c with fail Job
491 - Fix database locking calling db_lock and returning from function without
492   calling db_unlock.
493 - Add missing db_unlock to bvfs_update_cache.
494 - Fix #1532 about permission on binaries
495 - Fix #1527 about deadlock during migration
496 - Another fix for OpenSSLv1
497 - Add -lrt to Solaris links
498 - Fix tls.c for OpenSSLv1
499 - Fix #1511 when trying to insert more than 50.000 directories in bvfs
500 - Fix plugin load not to stop if one plugin bad -- pointed out by James
501 - Remove --without-qwt from configure statement.
502 - Second correct fix to bug #1524 verify fails after adding or removing files
503 - Fix bug #1524 verify fails after adding or removing files
504 - Apply fix suggested by Andreas in bug #1502 for mediaview column sort problem
505 - Fix OpenSSL 1.x problem in crypto.c on Fedora 12
506 - Display AllowCompress warning message only if compression used in FileSet
507
508 =============================================================================
509
510
511 ============= Release 5.0.1 ========================
512
513 !!!!!!!!!!!!!!! NOTE FOR 5.0.0 USERS !!!!!!!!!!!!!!!!!!!!
514 The Allow Duplicate Jobs directive has been significantly 
515 reworked, and the default value has changed. See below.
516
517 Truncate On Purge has been totally rewritten. See the new
518 features section of the manual.
519
520 When Volume Poll Interval is set in the SD DEVICE configuration,
521 (default 5 mins), after a certain number of polling tries (approx
522 10) polling will stop and the operator will be asked to
523 resolve the problem.  Previously there was no limit, and an
524 error message could be produced at each poll attempt.
525 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
526
527 Changes since 5.0.0
528 -------------------
529 - We believe that we have resolved most of the problems
530   concerning canceled or failed jobs being "stuck" in the
531   Director.  There is one outstanding problem in the SD when
532   canceling jobs that we will fix in the next major release.
533   If you see jobs that seem to be stuck, in general issuing
534   a cancel command in bconsole should now make them go away.
535
536 Directives:
537 - The default for "Allow Duplicate Jobs" has been changed from 
538   no to yes.  If you use this directive, please check your
539   conf file, and note the next two items !!!!!!!!!!!!!!!!!!!
540 - AllowHigherDuplicates disabled. It did not work as documented   
541     and was confusing.
542 - New directive "CancelLowerLevelDuplicates" See New Features
543   section in the manual.
544 - Truncate on Purge rewritten.  See New Features section in the manual.
545
546 Bug fixes:
547 1448 1466 1467 1468 1476 1481 1486 1488 1494 1497 
548 1499 1501 1505 1509 1513
549
550 - Ensure SD asks for help when looping even if poll set. Fixes bug #1513.
551 - Fix three-pool regress bug
552 - Modify bacula.spec fixes bug #1505
553 - This version fixes an issue where the console window would start out
554   docked. It is fixed by initiating the variables in the Pages class wi
555   constructor.
556 - Fix make_catalog_backup.pl fails when catalog db is on other host
557 - Apply MacOSX installer patch from bug #1509
558 - Apply fix to previous fix of Copy problem. Fix proposed by reporter o
559   #1476
560 - Fix bug #1501 -t does not print errors
561 - Apply SQLite3 update fix from bug #1497
562 - Apply bashism fix for diskchanger.in script from bug #1499
563 - Apply rpm fix for Sci Linux from bug #1494
564 - Take most recent Ukranian po from bug #1448
565 - Probable fix for Copy/Migration bug #1476
566 - Fix bug #1488 -- avoid recursion and race conditions in messages.c
567 - Upgrade cats library also to 5.0.0
568 - Fix missing console page in bat
569 - Add bat help files to Window install
570 - Improve Windows upgrade to ensure old FD is shutdown
571 - Fix bug #1481 -- bat consumes all console file descriptors
572 - Backport truncate on purge from 5.1.x
573 - Fix bug #1486 -- bat doesn't show any errors on command-line
574 - Update the bsock error URL
575 - Correct .my.cnf umask in make_catalog_backup.pl
576 - Apply fix for dbcheck use by make_catalog_backup.pl
577 - Fix seg fault in bscan from new comment field
578 - Allow multiple CNs when using TLS
579 - Fix seg fault in SQlite driver
580 - Make shared libs version the same as the Bacula release version
581 - Remove file_index sequential check
582 - Fix #1466 about Bogus pruning message
583
584 For Packagers:
585 1.  The default query.sql file is now, except for some comments, empty.
586 The old file, which we no longer support (it is impossible or difficult to
587 make it work on every backend, and the queries are mostly contributed) can
588 be found in <bacula-source>/examples/sample-query.sql.  The sample file is
589 not installed by the Makefiles
590
591 2.  When you install the mtx-changer script, you must also install
592 mtx-changer.conf if it does not exist.  This new file (mtx-changer.conf) is
593 required for mtx-changer to work, but it is a user configurable file, so on
594 any update, any existing file should not be overwritten.
595
596 3.  Bat should be built on every platform that is capabable of running Qt.
597 However, the Qt code is changing rather quickly and is not always
598 compatible from version to version.  We have built and verified bat on Qt
599 4.3.4.  We strongly recommend that you do not build and distribute bat with
600 any other version of Qt unless you personally test it.  To build against Qt
601 4.3.4, download the depkgs-qt package from the Bacula Source Forge download
602 location, read the README file and follow the instructions.
603
604 If you are building for Bacula version 5.0.0, please ensure that you do not
605 have qmake-qt4 loaded on your system.  If you do, either remove it or
606 rename it before trying to build bat.  If you do not, bat will probably be
607 built using the shared objects on your system.  For Bacula 5.0.1 and later,
608 this problem (bug) does not exist.
609
610 depkgs-qt does not install Qt on your system, nor does it interfere with
611 you having any other version of Qt installed on your system.  Once you
612 build bat with depkgs-qt, it should *not* use the Qt shared objects, but
613 rather they will be linked into the program.  After fully installing bat
614 (make install), you can run "ldd bat" to see what shared objects it will
615 use.  If any Qt shared objects are referenced, something has gone wrong.
616
617 4.  Unless absolutely necessary, we recommend that you do not define any
618 special library environment variables that apply to the ./configure -- for
619 example: LIBDIR=/...  ./configure <your-options> is strongly discouraged.
620 Doing so, could potentially cause Bacula to be linked against the wrong
621 shared objects.
622
623 5.  The Bacula project strongly recommends that you install Bacula into a
624 single directory, with a few minor exceptions such as the MySQL or
625 PostgreSQL databases.  Preferrably this should be /opt/bacula.  The full
626 recommendation is:
627
628 #!/bin/sh
629 # Recommended configure script for Bacula
630 prefix=/opt/bacula
631 email=xxx@yyy.zz
632 CFLAGS="-g -O2 -Wall" \
633   ./configure \
634     --sbindir=${prefix}/bin \
635     --sysconfdir=${prefix}/etc \
636     --docdir=${prefix}/html \
637     --htmldir=${prefix}/html \
638     --with-working-dir=${prefix}/working \
639     --with-pid-dir=${prefix}/working \
640     --with-subsys-dir=${prefix}/working \
641     --with-scriptdir=${prefix}/scripts \
642     --with-plugindir=${prefix}/plugins \
643     --libdir=${prefix}/lib \
644     --enable-smartalloc \
645     --enable-tray-monitor \
646     --enable-bat \
647     --with-mysql \
648     --with-dump-email=${email} \
649     --with-job-email=${email} \
650     --with-smtp-host=localhost \
651     --with-baseport=9101
652
653 Obviously, the email, and some of the minor options (mysql, postgresql,
654 ...) can be changed to suit your distribution, but the directory names
655 defined above are strongly recommended, and over time the default values in
656 the bacula-dir.conf and bacula-sd.conf will reflect these choices.
657
658 If you have any questions about this or would like a detailed document
659 describing our recommendations including packaging requirements, please
660 send an email to the bacula-devel list.
661
662 6.  Starting with Bacula version 3.0.0 up to Bacula 5.0.0, the shared
663 libraries that Bacula uses by default are named xxx-1.0.0.  Starting with
664 Bacula 5.0.1, we are going to name the libraries using the Bacula version.
665 So in Bacula 5.0.1, the libraries will be named xxx-5.0.1.  With future
666 versions, the last digit may or may not change when we distribute patch
667 updates (i.e.  the last digit of the version changes).  This will depend on
668 whether or not we have changed something in the library.  Hopefully this
669 new procedure will resolve some of the incompatibility problems between
670 different versions of the shared objects.
671
672 7.  The default build option for bconsole is conio (my own little console
673 routines).  I did this because some years ago, readline was very difficult
674 to maintain -- it and where it was found seemed to change on every release.
675 This generated at the time a number of support problems.  It seems to me
676 that since then there have been very few problems with readline.  As a
677 consequence, I have no problem if you want to make bconsole with readline
678 enabled.  It will actually give some very nice new bconsole command
679 completion functionality that Eric has written.  Bottom line: feel free to
680 use readline or not as you please.
681
682 ==========================================================
683
684
685
686 Release Notes for Bacula 5.0.0
687
688 Release Numbering:
689 -----------------------------------------------------------
690 You might be wondering why this release jumps from 3.0.x to 
691 5.0.0 thus skipping version 4.0.0.  We have done this for 
692 several reasons: first, we wanted a way of distinguishing
693 the numbering system for the Bacula System Enterprise version
694 and the Bacula Project version.  So, to do so, we have decided
695 that the first number of the Bacula Project version will always
696 be odd, and the first number of the Enterprise version will always
697 be even. Thus the Bacula Project now moves from 3.0.x to 5.0.x.
698 In addition, we want to keep the Bacula Project version larger
699 than the Enterprise version to indicate that the Bacula Project
700 version is more advanced or has more features than the 
701 Enterprise version. For memory, the current Enterprise version
702 is 2.6.1, and the next release (in a few months -- before June 2010)
703 will be version 4.0.0.
704
705 Warning:
706 --------------------------------------------------------------
707 Please note the three Warnings below before doing any install or
708 upgrade.
709        
710
711 Changes since 3.0.3a (the last Bacula Project release):
712 -------------------------------------------------------
713
714 Bug fixes:
715 1337 1351 1352 1354 1357 1361 1367 1369 1370 1373 
716 1376 1391 1403 1409 1420 1422 1427 1428 1431 1450 
717 1454 1455 1458 1456
718
719 Fixed:
720  - Problem that locks the Director when the SMTP server wasn't 
721    responding to the bsmtp program 
722  - Restore's dir command shows incorrect file sizes 
723  - Fix various problems with the reload command   
724  - Fix problems with conio
725  - Eliminate several deadlocks or potential race conditions from SD
726
727 Enhancements:
728  - Project 5: Truncate volume after purge
729  - Project 6: File Deduplication using Base Jobs 
730  - Project 10: Restore from Multiple Storage Daemons
731  - Project 11: AllowCompression per Device
732  - Project 23: Add Maximum Concurent Jobs for Devices to balance load 
733    between drives
734  - Add Accurate Fileset Options to configure accurate detection. Can use 
735    checksum verification for example.
736  - Allow FD to keep root read but drop write permission (CAP)
737  - Secure handling of passwords for catalog backup
738  - Add Tab-completion for Bconsole when using Readline
739  - Add Bvfs API to query the catalog without building a memory tree
740  - Add new speed test to btape program
741  - Add new Bat screens (Autochanger content, Job view, Media view, ...)
742  - Windows version of Bat
743  - Added Spanish Bacula translation   
744  - New bconsole -u nnn option to have timeout on commands
745  - Allow Migrate, Copy, and Virtual Full to read and write
746    to the same Pool
747  - show disabled   -- shows disabled Jobs
748  - Add Pool File and Job retention periods (take precedence over Client)
749  - Many ACL improvements
750  - Level added to FD status Job entry
751  - Allow turning on/off Block Checksum per device
752  - Set Device Poll interval to 5 minutes -- previously did not poll
753  - Implement lock manager with bad order protection
754
755 Compatibility:
756 As always, both the Director and Storage daemon must be upgraded at
757 the same time, and on any given machine, you must run only one version
758 of Bacula. This means that on the Director and Storage daemon machines,
759 you *must* upgrade your File daemon as well.
760
761 Older 3.0.x and possibly 2.4.x File Daemons are compatible with the 5.0.0
762 Director and Storage daemons. There should be no need to upgrade older File
763 Daemons immediately. However, we recommend that you do so as soon
764 as is reasonable for your situation.
765
766 ================== Warning !!!!!! ==========================
767
768 New Catalog format in version 5.0.0 (3.1.9 or later)
769 -----------------------------------------------------
770
771 This release of Bacula uses a new catalog format. We provide a set of
772 scripts that permit to convert a 3.0.x (version 11) catalog to 5.0.0 (version
773 12).  The Bacula project rpms distributed on Source Forge will automatically
774 detect the database change and do the upgrade for you.  We strongly
775 recommend that you save a copy of your existing database before upgrading
776 using rpms.
777
778 The simplest way to upgrade the database assuming you are building from
779 source:
780 1. Stop any current version of Bacula from running.
781 2. Save a copy of your existing database.
782 3. Configure, build, and install the 5.0.0 version of Bacula
783    Note the new ./configure options in the manuals see the link
784    at the bottom of this file.
785 4. cd <your-scripts-installation-directory>
786 5. ./update_bacula_tables
787 6. If you have multiple catalogs, edit the update_bacula_tables
788    script and put the name of another database, and then
789    execute the script again. Repeat this until all Bacula
790    catalogs have been updated.
791 7. Start the new Bacula.  If everything worked, it should
792    not print any error messages.
793
794 If you start from scratch, you don't need to run the update_bacula_tables
795 script because the create_bacula_tables script automatically creates the new
796 table format.  However, if you are using a version of Bacula older than 3.1.9
797 (e.g.  3.0.3) then you need to run the update_bacula_tables script that will
798 be found in the <bacula>/src/cats directory after you run the ./configure
799 command.  As mentioned above, before running this script, please backup your
800 catalog database, and when you do running it, be sure shutdown Bacula and be
801 aware that running the script can take some time depending on your database
802 size.
803 ================================================================
804
805
806 ================== Warning !!!!!! ==========================
807 If you upgrade a previous Win32 client installation, you must
808 first stop the File daemon, then uninstall it before attempting
809 the upgrade. If you do not do so, the upgrade will probably
810 fail and you will need to manually find and run the 
811 Uninstall.exe file, before you can upgrade to the new version.
812 This is because the file locations are different.  If you want
813 to save your previous bacula-fd.conf file, please do so before
814 uninstalling it.
815 ================================================================
816
817 ================== Warning !!!!!! ==========================
818 Due to permissions problems on Windows Vista and later systems,
819 we no longer require SYSTEM or Administrator permissions to 
820 access the binaries and configuation files.  If you wish
821 to restrict access to these files, please see the New Features
822 section of the manual for how to set access control lists.
823 ================================================================
824
825 Note, the Win32 Installer no longer installs the Bacula Servers
826 (Director and Storage daemon). See the New Features section of
827 the manual for more details.
828
829 ============ Documentation improvements needed ==================
830
831 Note!!!!! The 5.0.0+ documentation has a number of known problems:
832
833 1. We have reduced the number of manuals, which has fixed many
834    of the broken links found in the old 3.0.x version, but there
835    are still some that need fixing.
836
837 2. Integration of the 3.0.x features into the main manuals has
838    not yet been done.
839
840 The documentation will not be completed in the near future due to lack
841 manpower.  If you are unhappy with this situation as we are, we suggest
842 you help by submitting patches to the documentation.  Thanks.
843 =====
844
845
846 This release includes large number of new features and changes.
847 It should be more or less compatible with previous xx.conf files
848 and File daemons providing that you are not using any of the new
849 features.
850
851 Please see the New Features chapter of the new manual, which documents
852 some but not all the new features (we are still working on it):
853
854 http://www.bacula.org/5.0.x-manuals/en/main/main/New_Features_in_5_0_1.html
855   
856 The ChangeLog has more details.