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