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