]> git.sur5r.net Git - bacula/docs/blob - docs/home-page/fr/news.txt
Update News
[bacula/docs] / docs / home-page / fr / news.txt
1 Kern;;;20 July 2009 at 14:49
2 Bacula Version 3.0.2 has been released to Source Forge
3 Note, if you are not already running 3.0.x, read the 3.0.x release notes
4 below.  Important!!!
5
6 Version 3.0.2 is primarily a important bug fix update to version 3.0.1 with
7 some enhancements (see below).
8
9 Changes since 3.0.1:
10
11 Bug fixes:
12   1029, 1285, 1298, 1303, 1304, 1305, 1306, 1307, 1308, 1309, 1311, 1315
13   1317, 1318, 1323, 1325, 1331, 1333, 1335
14
15 Fixed:
16  - Fix problem with the Postgresql driver that sometime displays <NULL> values
17  - Cleanup old job records when starting the Director
18  - Fix bugs in xattr code
19  - Fix encoding problem with Postgresql
20  - Fix that prevents restore by file selection from using Copy job
21
22 Enhancements:
23  - Security enhancement for the File Daemon
24  - New directive to specify source address for outgoing connexions
25  - Show volume availability in autochanger when doing restore.
26    This is project 31 in the projects file.
27  - Add accurate=yes/no option to estimate command
28  - Add --with-hostname, --with-bsrdir, --with-logdir to ./configure
29  - Add a restore menu that contructs a full restore when entering a JobId.
30    This is project 2 in the projects file.
31  - Add new Nagios plugin
32
33 Compatibility:
34 Like always, both the Director and Storage daemon must be upgraded at
35 the same time.
36
37 Older 3.0.x and possibly 2.4.x File Daemons are compatible with the 3.0.2
38 Director and Storage daemons. It should be no need to upgrade older File
39 Daemon.
40 ;;;;
41
42 Kern;;;30 April 2009 at 17:49
43 Bacula Version 3.0.1 has been released to Source Forge.
44
45 Note, if you are not already running 3.0.0, please read the 3.0.0 release notes.  Important!!!
46
47 Version 3.0.1 is primarily a minor bug fix update to version 3.0.0 with
48 one enhancement (see below).
49
50 Changes since 3.0.0:
51 Bug fixes:
52   1276, 1274, 1275, 1272 1246, 1268, 1281, 1282.
53
54 Fixed:
55 - Check for job_canceled() in fd_plugin code.
56 - Update Win32 table creation to have new DB version 11 format
57 - Remove illegal Options in Exclude of default Win32/64 bacula-dir.conf
58 - Remove 'Reposition' messages when restoring
59 - Updated projects file
60 - Tweak version string to display versionid field at the end
61   and keep fields order.
62   - Add additional mysql connection debug code submitted by:
63     Chandranshu <chandranshu@gmail.com>
64
65 Enhancement:
66 - Modify insertion of read Volumes in SD to be done *before* the
67   drive reservation. This ensures that a Volume to be read will not
68     be reserved for writing. Significant improvement in eliminating
69       tape deadlock situations.
70
71 Note, both the Director and Storage daemons must be upgraded at the
72 same time. The 3.0.1 File daemons are compatible with 3.0.0 file
73 daemons and as noted below in the 3.0.0 release notes the Director
74 and Storage daemon should be compatible with 2.4.x File daemons.
75 In general, we do not expect any of the 3.0.x File daemons to work with older
76 Directors and Storage daemons (as has always been the case for Bacula
77 releases).
78
79 ============ Documentation improvements needed ==================
80
81 Note!!!!! The 3.0.0+ documentation needs rather extensive modifications in the
82 following areas:
83
84 1. Missing documentation.
85 2. Correction of links within various manuals -- most fail.
86 3. Integration of the new features into the main documents.
87 4. Much more.
88
89 The documentation will not be completed in the near future due to lack
90 manpower.  If you are unhappy with this situation as we are, we suggest
91 you help by submitting patches to the documentation.  Thanks.
92 =====
93 ;;;
94
95 Kern;;;09 April 2009 at 22:30
96 Bacula Version 3.0.0 has been released to Source Forge.
97
98 This is to inform you that we have uploaded the Bacula version 3.0.0 source 
99 tar files and the Win32/64 installer files to the Bacula Source Forge 
100 download location.
101
102 There are quite a number of new features in this release, and upgrading to it 
103 requires a database upgrade, so please read the release notes carefully 
104 (included below) and the documentation for the new features at:
105
106 http://www.bacula.org/manuals/en/concepts/concepts/New_Features.html
107
108 There is still a good deal of work to do to finish the release process (mainly 
109 reorganizing the web site manuals ...), but at least the source files are 
110 released.  The rpms should follow shortly (probably this weekend).
111
112 If you are currently using 2.4.4, please note that within a few months that 
113 version will no longer be supported, so please consider the possibility of 
114 upgrading.
115
116 This release probably has the most new features that we have ever released, 
117 and it has taken a long time to produce it.  The basic code is very well 
118 tested, and if you stick to 2.4.4 features, you are unlikely to experience 
119 problems.  However, many of the new features have not been well tested, so 
120 your help will be appreciated.
121
122 The following issues with 3.0.0 are known and we are working on them:
123
124 1. The documentation is not 100% complete (there are so many new features that 
125 we missed documenting some).  
126
127 2. All the new documentation is in the New Features chapter, but not all of it 
128 has yet been integrated back into the appropriate chapters.
129
130 3. James has reported that the Exchange plugin may crash if you cancel a job 
131 while it is running.  He is working on this.
132
133 4. The SD has many new features that will make it more stable. One in 
134 particular is that it knows what Volumes will be read during a migration, 
135 copy, or Virtual backup job, and will ensure that they are not selected for 
136 writing (something easy to do if you are using disk files and the same pool 
137 for reading an writing).  However, the day after the release was cut, I found 
138 a problem with this code that prevents it from working properly during 
139 certain pre-allocations of the write tape.
140
141 5. There is still an outstanding bug report on VSS failing (it seems to be a 
142 bit of a rare case).
143
144 As I previously announced, we will now make 3.0.0 our main release source code 
145 stream, and we hope to release new version every six months and bug fix 
146 updates even sooner.  To be able to do this, we will support version 2.4.4 
147 only for a few more months.  There after the project will only support the 
148 most current release ...
149
150 This release comprises a lot of work by a lot of different people and many 
151 contributions.  Normally I hesitate to mention particular people or 
152 contributions because I always forget someone, but since this was such a big 
153 release, I would like to mention at least the big contributions:
154
155 Sponsor Company(s)  -  Programmer - Project
156 Bacula Systems - Eric Bollengier - Accurate Backup
157 Bacula Systems - Eric Bollengier - Catalog format enhancements
158 Bacula Systems - Eric Bollengier - bextract non-portable Win32 data
159 Bacula Systems - Eric Bollengier - Win64 File daemon
160 Bacula Systems - Eric Bollengier - SD deadlock detection + postmortum dump
161 Bacula Systems - Eric Bollengier - Faster Attribute despooling if DIR & FD on 
162                                                      same machine
163 Bacula Systems - Eric Bollengier - Virtual tape emulation
164 Bacula Systems - Kern Sibbald - USB rescue key
165 Equiinet funded development - James Harper - MS Exchange plugin
166
167 Personal contributions:
168 Kjetil Torgrim Homme - Regex expressions for restore in bootstrap file
169 Marco van Wieringen - ACL code overhaul
170 Marco van Wieringen - Solaris ZFS/NFSv4 ACL support
171 Marco van Wieringen - Extended Attribute support
172 Marco van Wieringen - Shared Objects
173 Dirk Bartley - Bat speedup + stability improvement + many enhancements
174 Joao Henrique Freitas - libdbi catalog driver
175 Scott Barninger - rpm packaging
176 Kern Sibbald - many big and little projects ...
177 Many people -- see the AUTHORS file.
178
179 Many thanks to everyone for making Bacula what it is today.
180
181 === List of new features ===
182 - Accurate Backup
183 - Copy Jobs
184 - ACL code overhaul
185 - Solaris ZFS/NFSv4 ACL support
186 - Extended Attribute support
187   --disable-xattr (default=auto)
188 - Shared Objects
189   --enable-libtool (default)
190   --disable-libtool
191 - Virtual Backup
192 - Catalog Format Enhancements
193   - Support for more than 4 Billion file entries
194   - New stats tables
195 - Duplicate Job Control
196 - TLS Authentication
197 - bextract non-portable Win32 data
198 - State File updated at Job Termination
199 - Bacula Plugins
200   - FD bpipe plugin
201   - FD Exchange plugin
202 - libdbi DB driver
203 - Console Enhancements
204   - status slots
205   - list joblog
206   - command separator
207 - Bootstrap regex
208 - Restore seek optimization
209 - Virtual Tape Emulation
210 - Bat Enhancements
211 - RunScript Enhancements
212 - Status enhancements
213 - FD connect timeout default to 3 minutes
214 - ftruncate implemented for NFS Volumes
215 - FD Version compatibily flag
216 - Statistics Enhancements
217 - Faster Attribute despooling
218 - Document split into 6 manuals
219 - GPLv2 license now compatible with OpenSSL
220 - Win64 File daemon
221 - Postmortum dump improvements in SD
222 - Deadlock mutex detection in SD
223 - Improved Volume management in SD to avoid deadlocks.
224 - New configure install options
225   --docdir=  (default=/usr/share/doc/bacula-VERSION)
226   --htmldir= (default=/usr/share/doc/bacula-VERSION/html -- bat help files)
227   --plugindir= (default=sysconfdir, where plugins will be installed)
228 - New Bare Metal Recovery with USB key. See rescue/linux/usb
229  New Directives:
230 - Max Full Interval
231 - Max Diff Interval
232 - Honor No Dump Flag
233 - Exclude Dirs Containing
234 - Recycle Pool
235 - Max Run Sched Time
236 - Max Wait Time    
237 - Full/Diff/Incr Max Run Time
238 - Scratch Pool
239 - Max Console Connections
240 - Spool Size (in Job resource)
241 - Allow Mixed Priorities
242 - Allow Duplicate Jobs
243 - Allow Higher Duplicates
244 - Cancel Queued Duplicates
245 - Cancel Running Duplicates
246 - TLS Authenticate
247 - Console (in RunScript)
248
249 New features from Project Items Completed for version 3.0.0
250     also listed above:
251 Item  1:  Accurate restoration of renamed/deleted files
252 Item  3:  Merge multiple backups (Synthetic Backup or Consolidation)
253 Item  4:  Implement Catalog directive for Pool resource in Director
254 Item  5:  Add an item to the restore option where you can select a Pool
255 Item  8:  Implement Copy pools
256 Item 12:  Add Plug-ins to the FileSet Include statements.
257 Item 13:  Restore only file attributes (permissions, ACL, owner, group...)
258 Item 18:  Better control over Job execution
259 Item 26:  Store and restore extended attributes, especially selinux file 
260 contexts
261 Item 27:  make changing "spooldata=yes|no" possible for
262 Item 28:  Implement an option to modify the last written date for volumes
263 Item  n:  Split documentation into several books
264 ================================
265
266
267        Release Notes for Bacula 3.0.0
268
269   Bacula code: Total files = 520 Total lines = 205,459 (*.h *.c *.in)
270
271 The diff between 2.4.4 and 2.5.x is 208,340 lines, so this release
272 represents an enormous effort.
273
274 This Director and Storage daemon must be upgraded at the same time,
275 but they should be compatible with all 2.4.x File daemons, unless you
276 use some of the new features that affect the FD.  In other words, you should
277 not have to upgrade all your File daemons when you upgrade. However, any
278 release of version 2.5.40 or greater requires a database upgrade.
279
280 ================== Warning !!!!!! ==========================
281
282 New Catalog format in version 3.0.0 (2.5.40 or later)
283 -----------------------------------------------------
284
285 This release of Bacula uses a new catalog format. We provide a set of
286 scripts that permit to convert a 2.4.x (version 10) catalog to 3.0.0 (version
287 11).  The Bacula project rpms distributed on Source Forge will automatically
288 detect the database change and do the upgrade for you.  We strongly
289 recommend that you save a copy of your existing database before upgrading
290 using rpms.
291
292 The simplest way to upgrad the database assuming you are building from
293 source:
294 1. Stop any current version of Bacula from running.
295 2. Save a copy of your existing database.
296 3. Configure, build, and install the 3.0.0 version of Bacula
297    Note the new ./configure options in the manuals see the link
298    at the bottom of this file.
299 4. cd <your-scripts-installation-directory>
300 5. ./update_bacula_tables
301 6. If you have multiple catalogs, edit the update_bacula_tables
302    script and put the name of another database, and then
303    execute the script again. Repeat this until all Bacula
304    catalogs have been updated.
305 7. Start the new Bacula.  If everything worked, it should
306    not print any error messages.
307
308 The upgrade operation will convert the FileId index field of the File table
309 from 32 bits to 64 bits.  This operation will take TIME and will *temporarily* 
310 DOUBLE THE SIZE of your catalog. Bacula must be shutdown during this update,
311 so, won't be able to run jobs during this period.  For example, a 3 million 
312 files
313 catalog will take 2 mins to upgrade on a normal machine.  Don't forget to
314 backup it before executing the script.
315
316 If you start from scratch, you don't need to run the update_bacula_tables
317 script because the create_bacula_tables script automatically creates the new
318 table format.  However, if you are using a version of Bacula older than 2.5.40
319 (e.g.  2.4.4) then you need to run the update_bacula_tables script that will
320 be found in the <bacula>/src/cats directory after you run the ./configure
321 command.  As mentioned above, before running this script, please backup your
322 catalog database, and when you do running it, be sure shutdown Bacula and be
323 aware that running the script can take some time depending on your database
324 size.
325
326
327 Important New configure options :
328 ----------------------
329
330 This release of Bacula 3.0.0 uses libtool by default
331 to generate the Bacula libraries as shared objects rather than
332 being directly linked in as in prior versions.  This means that
333 the Bacula shared objects, must either be in a shared object 
334 directory known to the loader or they must be in the directory
335 where the Bacula binaries are installed.  It is also possible
336 to explicitly specify the libraries directory on the ./configure
337 line (--libdir=/full-path/dir), but this should not be necessary.
338
339   ./configure --libdir=<full-path>
340
341 If you have problems with libtool or you wish to use the old 
342 way of building libraries and linking them into Bacula, you 
343 can do so by disabling libtool on the configure command line with:
344
345   ./configure --disable-libtool
346
347 During the installation of Bacula 3.0.0, it will now install
348 bat help files (if you have configured bat).  These files
349 are placed in /usr/share/doc/bacula/html by default. If you
350 want to put them elsewhere use:
351
352   ./configure --htmldir=<full-path>
353
354 During the installation of Bacula, it will now install the
355 ReleaseNotes, License, technotes, ChangeLog, and similar
356 files in /usr/share/doc/bacula by default.  If you
357 want to put them elsewhere use:
358
359   ./configure --docdir=<full-path>
360
361 During the installation of Bacula, any plugins will be
362 installed in the plugindir, which is by default the
363 same as libdir (/usr/lib).  You can specify an alternate
364 location with:
365
366   ./configure --with-plugindir=<full-path>
367
368 ==============================================================
369
370 This release includes large number of new features and changes.
371 It should be more or less compatible with previous xx.conf files
372 and File daemons providing that you are not using any of the new
373 features.
374
375 Please see the New Features chapter of the new manual, which documents
376 some but not all the new features (we are still working on it):
377
378 http://www.bacula.org/manuals/en/concepts/concepts/New_Features.html
379   
380 The ChangeLog has more details.
381
382 ;;;
383 Kern;;;03 Nobember 2008 at 17:35
384 Critical 2.4.3-orphaned-jobs.patch released
385 We recently found and corrected a serious bug in Bacula that causes jobs to be
386 orphaned or "stuck" in the director during the pruning process.  Depending on
387 what jobs get stuck and how many there are, it could prevent additional jobs
388 from running.  As best we can tell, this problem occurs only during what could
389 be called extreme pruning conditions -- i.e.  there are insufficient Volumes
390 available for normal operations.
391
392 In any case, we recommend that everyone apply the 2.4.3-orphaned-jobs.patch,
393 which you can find in the bacula-patches section of the Source Forge download
394 area as well as in the directory patches of both the trunk and Branch-2.4 SVN.
395 ;;;
396
397 Kern;;;12 October 2008 at 10:30am
398 Creation of Bacula Systems SA
399 Dear Members of the Bacula Community,
400
401 I'm pleased to announce the creation of Bacula Systems S.A., a new company to 
402 provide professional support and service for Bacula.  I believe you will be 
403 pleased to see how we have married a strong commitment to the ethos of honest 
404 open source software with the availability of services desired by a wide 
405 range of Bacula users. 
406
407 As many of you know, I began work on Bacula in 2000 and released the first 
408 public version in April 2002 to Source Forge.  Although I have personally 
409 written a very substantial part of the code, I offer sincere thanks to the 
410 many members of the community who have provided ideas, fixes, testing, and 
411 contributions of code, without which Bacula would not be what it is today.  
412 It has been a labor of love and I am pleased that so many people have found 
413 Bacula useful. 
414
415 Before telling you more about Bacula Systems, let me reiterate my unfaltering, 
416 ongoing commitment to open source software and the Bacula open source 
417 project. The code for Bacula and all future releases will remain available as 
418 free open source software under the GPL license that I transferred to the 
419 protection of the Free Software Foundation of Europe. Unlike some other open 
420 source projects, there will be no separate "enterprise" or proprietary 
421 version of the Bacula source code. www.bacula.org will continue to be the 
422 home for Bacula project development.
423
424 So, why create Bacula Systems? The company was created to respond to requests 
425 from users who want professional support with guaranteed levels of service 
426 and response times.  To ensure continuity and the highest level of knowledge 
427 transfer, I will take the position of Chairman of the Board and Chief 
428 Technical Officer of Bacula Systems S.A..  
429
430 Several members of the Bacula community have joined me to start the company. 
431 The other team members are also strongly dedicated to the spirit of keeping 
432 Bacula open and free while simultaneously offering commercial services to 
433 those for whom it is essential in making the decision to deploy Bacula.  
434 Bacula Systems is self-financed -- the initial capital comes from the 
435 founders; no outside venture capital was sought or accepted.  This means we 
436 have the power to establish the company's priorities and we can remain 
437 dedicated to "honest open source". Bacula Systems S.A. is a Swiss company 
438 with offices in Yverdon-les-Bains, and with branches in France and Germany 
439 initially.  We will open additional branches as business requires.
440
441 I will continue to support development of Bacula via bacula.org and the Bacula 
442 community. Future developments will be in the "community" code base which 
443 will remain free.  Bacula Systems will offer "funded development" to 
444 customers who wish to accelerate the addition of certain features to Bacula.  
445 Code developed this way will be contributed to the free distribution and will 
446 be available to the entire community at no charge. Bacula Systems will 
447 provide additional fee-based services, including high quality consulting, 
448 training, documentation and certified binaries.
449
450 Our goal in establishing Bacula Systems is to be inclusive of the community, 
451 and expand it by creating opportunities for members of the Bacula community 
452 through a well-defined Partner Program.  If you provide IT services or 
453 consulting, the Bacula Systems Partner Program can provide you with the 
454 additional back-up (pardon the pun) support you need to serve your customers 
455 more effectively. 
456
457 Our plan is to develop an international network of partners who offer high 
458 value added services to Bacula users -- installing, configuring and optimizing 
459 Bacula for their customers, as well as Level 3 and 4 support, with guaranteed 
460 service levels.  We will also provide training and tools to our partners.
461
462 The Bacula project website, www.bacula.org, and Source Forge will be unchanged 
463 in the mission and ideals of being  free sources of information, mail lists 
464 and forum-based support for and by the community. Both Bacula source code and 
465 Bacula binaries will continue to be available for free, as in the past, and 
466 new releases will also be available for free. The new commercial website, 
467 www.baculasystems.com will provide information on commercial subscriptions 
468 for those users who want guaranteed levels of service, support, documentation 
469 and certified binaries.  
470
471 All members of the Bacula community are encouraged to register for free at 
472 www.baculasystems.com, so that you will receive announcements and news about 
473 our commercial activities, and so that you can send feedback to our new 
474 company, Bacula Systems.
475
476 Thank you for your interest and participation in the Bacula community.  
477
478 Sincerely,
479
480 Kern Sibbald
481 ;;;
482
483 Kern;;;11 October 2008 at 11:30am
484 Bacula version 2.4.3 Released
485 This is to let you know that the source tar files and the Win32 binaries for 
486 Bacula version 2.4.3 have been released to the Bacula Source Forge download 
487 area.
488
489 Release 2.4.3
490  This is a bug fix to version 2.4.2.  All daemons are compatible
491  with other 2.4.x versions.
492
493 Bugs Fixed:
494   1159, 1162. 1149, 1128, 1143, 1140, 1129
495
496 Change Summary:
497 - Apply 2.4.2-cancel-non-running-jobs.patch to be able to cancel
498   a non created job faster.
499 - This should correct bug #1159 where Migration does not properly
500   respect the Migration Low Bytes directive.
501 - Fix typo in configure.in that breaks --with-db-password option
502 - This code should fix the race condition that leads to a Director
503   crash at job end time when the job list is updated. This was reported
504   in bug #1162.
505 - Remove all double quotes from SQLite creating script and
506   replace by single quotes as suggested by John Huttley.
507 - Fix SQL case problem that may cause the failure of DiskToCatalog
508   in bug #1149.
509 - Copy missing storage name into edit buffer. As far as I can tell
510   this never caused a bug.
511 - Remove catalog dependency for bcopy
512 - Modify catalog scripts to have an easier packaging integration,
513   using default variables.
514   Make difference between SQLite3 and SQLite in db_get_type()
515 - Attempt to fix bug #1128 InChanger flag cleared during Migration
516   job when reading from one autochanger and writing to another.
517 - Add more information to SD acquire.c INFO messages.
518 - Fix NULL Volume name error when reading and the drive must
519   be switched.
520 - Fix a Verify InitCatalog problem where in certain cases
521   a garbage filename may be entered in the verification database.  This
522   fixes bug #1143.
523 - Add space after version before date in bat about dialog.
524 - Fix seg fault in Dir during estimate command with no level value
525   given. This fixes bug #1140.
526 - Add message to migration job when the target job is already migrated.
527   This closes bug #1129.
528
529 Unless some really serious new bug shows up, this will be the last release 
530 until the next major version (3.0.0), which we hope will be ready around the 
531 end of the year.
532 ;;;
533
534 Kern;;;26 July 2008 at 10:30am
535 Bacula version 2.4.2 Released
536 This is to inform you that we have released the source and Win32 binaries of 
537 Bacula version 2.4.2 to the Bacula Source Forge download area.
538
539  This is an important bug fix release since version 2.4.1.
540
541 Bugs Fixed:
542  1034, 1125, 1118, 1124, 1107, 1129, 1126
543
544 Change Summary:
545 26Jul08
546 - When a migration job actually runs, re-check the Job record
547   and skip if the job is already migrated. This should
548   significantly reduce the problems with bug #1129.
549 - Break the do_swapping into do_unload, do_swapping, and
550   do_load.  It is much more logical that way.
551 - Implement a set_dcr_from_vol subroutine in acquire.c for
552   reading volumes. This allows the dcr to be refreshed after being
553   zapped when the wrong volume is mounted. This should fix bug #1126 -
554 - During multiple tape restore, bacula
555   does not ask for physical tape change, but rereads same tape
556 - Apply patch submitted for bug #1107 with a small modification.
557   This fixes a bug where bcopy copied too many records.
558 - Make some tweaks to bsmtp based on patch submitted in bug #1124.
559   This fixes bug #1124.
560 - Make the default bat restore Pool be Any. This fixes bug #1118.
561 - Fix bug #1125 which reports a SD crash at the end of a tape
562   during restore. It was a debug statement that should not be
563   in a release.
564 - Fix #1034 by setting big timeout on mysql connections
565 - Do partial integration of the Win32 bat build created by Eric.
566 - Ensure that SD tried to mount a volume not in an autochanger
567   at least once before asking for operator intervention.
568 - Fix a pthreads bug in the Win32 pthreads emulation code affects only
569   version 2.5.x and above.
570 ;;;
571
572 Kern;;;7 July 2008 at 10:30am
573 Bacula version 2.4.1 Released
574 This is to inform you that we have released the source and Win32 binaries of 
575 Bacula version 2.4.1 to the Bacula Source Forge download area.
576
577 Bugs Fixed:
578  1103, 1100, 1105, 1094, 1109, 1106, 1101, 1102, 1112
579  1117, 1116, 1097.
580
581 Change summary:
582 -  Clear in-use bit on vol when unused while swapping.
583 -  Remove sleep at end of ./bacula
584 -  Clear hash packet for hardlinked files correctly. This corrects
585    a long standing bug where hardlinked files selected individually
586    would occasionally not be restored.
587 -  Apply Eric's patch to ensure that autoprune does not return
588    a Volume not in the autochanger unless requested to do so.
589 -  Correct bat restore display of multiple drives. This fixes
590    bug #1117.
591 -  Do find_a_volume() each time an unload is done. This
592    fixes the failure of maxvol2-test.
593 -  Use Qmsg() in job.c watchdog callback.
594 -  Release main control rwlock if ABORTing.
595 -  Make watchdog connect timeout queue messages rather than sending
596    directly to avoid lock conflicts with the real thread.
597 -  Remove const char that causes problems with Python, which has
598    older 'incorrect' headers.
599 -  Add const char in dbd.c to avoid compiler warnings.
600 -  Fix mtx-changer to detect both versions of Ubuntu (Debian)
601    mt. This fixes bug #1116.
602 -  Fix failure of 2drive-concurrent-test. Always read label;
603    clear_unload() only after drive is defined in acquire_for_read().
604 -  Generally clean up the manual tape loading code. The main
605    conceptial change is that when a volume is marked to be unloaded,
606    its volume name is retained, and it is only marked as unloaded
607    when either the autoloader says it is unloaded or another tape
608    is read on that drive.
609 -  Fix a recycling problem with two autochangers reported in bug
610    #1106. This may also (unlikely) fix a second recycling bug as
611    reported in #1103.
612 -  Fix a SD lock volumes deadlock problem reported in bug #1100.
613 -  Fix format problem in bscan output reported in bug #1105.
614 -  Copy more data when restarting a job so that run
615    overrides are kept. This should fix bug #1094.
616 -  Backport updates to jobq.c where possible.
617 -  Fix bug where SD did not ask operator if the device could not
618    be opened. Reported by Eric.
619 -  Add dbuser to DIR conf file (replaces user).
620 -  Add --with-db-password to ./configure
621 -  Fix regress to handle db_password.
622 -  Fix a couple of pedantic compiler warnings.
623 -  Fix bug when starting a restore on a storage that doesn't
624    have the requested MediaType.
625 -  More work on word alignments -- eliminate all ints from
626    the configuration routines.
627 -  Fix bug reported by Scott Barninger where the bacula script
628    refers to scripts in the wrong directory. Needed to meet the
629    requirements of recent FHS location changes.
630 -  Fix word alignment problem on non-Intel 64 bit machines
631    such as Solaris.  This should fix bug #1097 -- bus error in SD.
632 -  Add missing win32/patches/wxWidgets.patch to 2.4 repository.
633 ;;;
634
635
636 Kern;;;4 Jun 2008 at 10:30am
637 Bacula version 2.4.0 Released
638 This is to inform you that we have released the source and Win32 binaries of 
639 Bacula version 2.4.0 to the Bacula Source Forge download area.
640
641 This release consists mainly of a number of bug fixes since 2.2.x
642 but most importantly, a rewrite of significant portions of the
643 Storage daemon reservation and autochanger code. This rewritten
644 code is simpler, more stable, and works much better, particularly
645 with multiple drive autochangers than the prior code did.  That
646 said, there are still a number of issues to be resolved. Note,
647 the new code has not been tested in manual volume mount situations.
648
649 As usual, we strongly recommend when installing to keep the Director and the 
650 Storage daemon on the same version.  However, since this release only 
651 contains refactored code and bug fixes rather than new features, the clients 
652 (File daemons) should function perfectly with any 2.2.x version, and there is 
653 no database upgrade needed.
654
655 =====================================================
656                                                                      
657        Release Notes for Bacula 2.4.0
658
659   Bacula code: Total files = 500 Total lines = 188,654 (*.h *.c *.in)
660
661 This Director and Storage daemon must be upgraded at the same time,
662 but they should be compatible with all 2.0.x File daemons, unless you
663 use some of the new features that affect the FD.  In other words, you should
664 not have to upgrade all your File daemons when you upgrade. There is
665 no database upgrade needed from version 2.0.x to 2.2.0 nor from version
666 2.2.x to version 2.4.0
667
668 ==================   Warning !!!!!! ==========================
669 As of Version 2.4.0, the Win32 FD should not descend into
670 any reparse point directory or reparse mount points unless the
671 specified directory is explicitly mentioned at the top level of
672 FileSet (as with Unix). A file that is linked to another file will
673 be backed up, much like Unix hardlinked files.  If you want
674 reparse directories backed up, you must explicitly include them
675 in your FileSet.
676 ======================================================
677
678 This release consists mainly of a number of bug fixes since 2.2.x
679 but most importantly, a rewrite of significant portions of the
680 Storage daemon reservation and autochanger code. This rewritten
681 code is simpler, more stable, and works much better, particularly
682 with multiple drive autochangers than the prior code did.  That
683 said, there are still a number of issues to be resolved. Note,
684 the new code has not been tested in manual volume mount situations.
685
686 Bugs fixed:
687  1095, 1086, 1091, 1070, 1041, 1083, 1078, 1066, 1068, 1038
688  1062, 1065, 1046, 1047, 1031
689
690 New features:
691 - You can now build bat without the QWT libraries. Use
692   --without-qwt as a ./configure option.
693
694 Release Version 2.4.0
695 - Update version to 2.4.0 to reflect the magnitude of the SD changes.
696 - Make sure to clear JS_WaitMedia when operator mounts a Volume.
697   This fixes bug #1095.
698 - Add create_postgresql_database.sql to Win32 installer. Should
699   fix problem reported by Juilio Monteiro.
700 - Get correct slot when auto unloading a device. This fixes bug
701   #1086.
702 - Fix possible seg fault if SQL error.
703 - Fix renaming a Volume, which used the wrong Volume name.
704 - If operator has rewind tape, print warning, release tape and
705   try once more. If tape is positioned somewhere, something went
706   wrong, so mark the tape in error and try once more. Previously
707   this error was fatal, now it produces an error message.
708 - Ensure correct volume name displayed during restore
709 - Fix a few more Coverity reported problems.
710 - Fix #1091 about bad output in estimate command.
711 - Modify autochanger locking to attempt to avoid race
712   conditions.
713 - Make sure device not busy before doing label command.
714 - Display open() errors except when polling. Previously too
715   many were suppressed.  This should fix bug #1070.
716 - Fix Win32 reparse points. Bacula will not recurse into any
717   reparse point directory, including mount points, unless the
718   directory is explicitly mentioned at the top level (same as   
719  with Unix).  A file that is linked to another file will be
720   backed up -- much as Unix does for hardlinked files.
721   This fixes bug #1041.
722 - Remove StorageId test when pruning and recycling (Eric's changes).
723 - Fix buffer overruns detected by Coverity.
724 - Implement --without-qwt
725 - Fix layout of restore tree dialog
726 - Add configure bat QWT libraries, so that bat can be built
727   with or without the QWT libaries.
728 - Implement regression that explicitly tests swapping a Volume
729   from one drive to another.
730 - Enhance disk-changer to detect most error conditions.
731 - Fix SD code so that it properly swaps a Volume between drives.
732   This fixes bug #1083.
733 - Prevent a Volume that is being swapped from being freed from
734   the volume list. This will most likely fix, at least partially,
735   bug #1083.
736 - Fix strippath so that it does not get a buffer overrun and crash FD.
737   This fixes bug #1078.
738 - Make inability to change owner/group when creating a dir only a
739   warning rather than an error.
740 - Fix SQL query in migration code
741 - Fix bat seg fault at termination.
742 - Add Bacula generated version to bat about box.
743 - Backport development stream SD reservation system changes.
744 - When wrong volume is mounted during read, unload_autochanger.
745 - Stop searching for Volumes in SD askdir if DIR returns the
746   same volume name twice in a row.
747 - Rework class structures for VOLRES, DCR, and DEVICE to make
748   the method names a bit more logical, and for more logically
749   handling the responsibilities.
750 - Remove redundant code in terminating the scheduler that just
751   causes a seg fault in many cases.
752 - Improve algorithm for detecting pre-reserved volume and
753   swapping volumes.
754 - Prevent volume from being released while being swapped.
755 - Refactor parts of stored/mount.c
756 - Add sanity checks for VolWriteTime and VolReadTime
757 - Take care of bad clock changes while computing VolWriteTime
758   and VolReadTime. This should fix or limit #1066
759 - Correct error string numbers in dird/catreq.c
760 - Restructure reserving, acquiring, and mounting volumes. Calls to
761   autochanger are deferred for mount.c -- simplifes the code.
762 - Do not prune any running job. It just fails the job.
763 - Lock the volumes when changing dev->reserved_device and marking
764   the volume unused otherwise the device can get reserved by
765   another job before the volume is released, thus blocking it.
766 - Correct some SD catalog request error messages.
767 - Turn off code in read_record that causes a seg fault in the SD
768   when reading past an EOS_LABEL.
769 - Turn off unloading the autochanger in reserve.c as it just
770    causes problems.
771 - Lock volumes when unreserving a device.
772 - Do not mark volume unused when recycling.
773 - Fix bug #1068 fixes a SD crash when using Virtual autochanger.
774 - Generate correct JobMedia records during spooling/despooling when
775   running concurrent jobs.  Thanks to Tom Ivar Helbekkmo
776   <tih@hamartun.priv.no> for excellent analysis and testing.
777 - *Massive* commit of all fixes and back ports to create 2.2.9
778   Mostly SD reservations enhancements.
779 - Fix Win32 FD backup/restore memory leak due to improper termination
780   of BackupRead/Write. This fixes bug# 1038.
781 - Fixes a StorageId problem with volumes after migration.
782 - Implements autostart scripts for Debian
783 - Fix mtx-changer.in for broken Debian mt program.
784 - Apply doc fix from bug #1062.
785 - Resolve crash and improper restore wx-console Win32 restore
786   GUI. Fixes bug #1065.
787 - Update Win32 wxWidgets to latest version.
788 - Attempt to do correct handling of Win32 mount points. Should
789   fix bug #1046.
790 - Add const to AIX prototype for initgroups()
791 - Fix to the JobMedia patch, which introduced a new problem.
792 - Fix creating first JobMedia record during Migration to include
793   proper index. This caused slow restores of migrated jobs.
794 - Fix bug #1047, do not strip paths on symbolic links.
795 - Set catalog backup database and user name from values specified on
796   the ./configure line.
797 - Apply patch to correct bug #1031, about wrong pool source information
798   in job report.
799 ;;;;
800
801 Kern;;;27 Jan 2008 at 10:30am
802 Bacula version 2.2.8 Released
803 Bacula version 2.2.8 source tar files as well as the Win32
804 binaries are available in the bacula and Win32 release areas 
805 of Source Forge. I have hidden the previous BETA release
806
807 Version 2.2.8 is a bug fix to version 2.2.7 and has a few
808   additional bugs fixed than the BETA 2.2.8 version previously
809   released:
810 - It fixes bugs: 1036, 1033(doc), 1028, 1040, 1045(doc), 1030,
811   1042(partially), and possibly bugs 1018 and 1032.
812   Bugs 1018 and 1032 involve problems with multiple-drive autochangers,
813   and are difficult to reproduce.         
814   See the ChangeLog for more details.
815   Note, if you previously loaded version 2.2.8 BETA, you will probably
816   want to upgrade, but it is not urgent ...
817 ;;;
818
819
820 Kern;;;9 Jan 2008 at 20:30
821 Bacula version BETA 2.2.8 Released
822 Bacula version 2.2.8 source tar files as well as the Win32
823 binaries are available in the bacula-beta and
824 Win32-beta release areas of Source Forge
825
826 Version BETA 2.2.8 is a bug fix to version 2.2.7:
827 - It fixes bugs: 1036, 1033(doc), 1028, and possibly 1018 and 1032.
828   Bugs 1018 and 1032 involve problems with multiple-drive autochangers.
829 ;;;
830
831 Kern;;;24 Dec 2007;;20:30
832 Bacula version 2.2.7 Released
833 Bacula version 2.2.7 source tar files as well as the Win32
834 binaries are available in the Bacula release area of Source Forge
835
836 Version 2.2.7 has several new features and several important bug fixes
837   since version 2.2.6:
838 - It fixes bugs: 1009, 1022, 1024, 1019, 1012, 1021, 1020
839   1007, 1008.  For more details, please see the technotes-2.1 file.
840 - Fixed a seg fault reported by Frank Sweetser that depended on
841   exact path lengths, but the problem was in bsnprintf.c
842 - Double quoting include filenames (@xxx) in Bacula conf files is now
843   possible, thanks to a patch by Michael Stapelberg.
844 - You can pipe input to include filenames (@|prog) by using a vertical
845   bar, thanks to the above patch.
846 - A daylight savings time bug in the Win32 bsmpt was fixed by a patch from
847   Nerijus Baliunas.
848 - Marc Cousins submitted a patch that permits building the PostgreSQL
849   driver with version 8.3.
850 - The configure option --archivedir has been changed to --with-archivedir
851 ;;;
852 Kern;;;9 Nov 2007;;15:25
853 Bacula version 2.2.6 Released
854 Bacula version 2.2.6 source tar files as well as the Win32
855 binaries are available in the Bacula release area of Source Forge.
856
857 This release is a minor fix upgrade to version 2.2.5,
858 and we recommend that all users upgrade when they can.
859
860 Version 2.2.6 is a minor bug fix realease to version 2.2.5
861 - It fixes bugs: #1003, 942, 982, 990(response only), 991,
862   993, 986, 976.
863   - Fix bat crash wen it cannot connect to Director.
864   - Fix joblist failure bug in bat.
865 ;;;
866 Kern;;;9 Oct 2007;;15:25
867 Bacula version 2.2.5 Released
868 Despite the fact that the Release Notes are rather short, the bug
869 fixes represent quite a lot of work:
870
871 Version 2.2.5 is a major bug fix release to version 2.2.4
872 - It fixes the following bugs: #961, 962, 963, 969, 968, 960,
873   964, (possibly 935 and 903), 953, 953, 967, 966, 965, 954,
874   957, 908, 958, and 955.
875 - It also improves listing performance problems in bat pointed
876   out by Chris Howells.
877 ;;;
878 Kern;;;29 Sept 2007;;20:30
879 A serious data loss bug in Bacula version 2.2.4 found and fixed
880
881 This bug was very elusive and time consuming to track down.  It
882 turned out to be a race condition that can lose the last one or
883 two blocks of a Job, which can happen in rare cases only when
884 running multiple simultaneous jobs when a volume fills and one
885 Job finishes receiving the last data from the FD and at the same
886 time a second job detects the end of the Volume.  The bug was
887 introduced in version 2.0.0 and did not exist in version 1.38.x.
888 If the bug is triggered, the data is lost (not written to the
889 Volume), and it can occur for any backup job of any level under
890 the conditions noted above.
891
892 The bug is reported in the bugs database as bug #964, and just
893 this morning I found and tested a fix, which is attached as a patch
894 to the bug report.  The patch (2.2.4-lost-block.patch) is also
895 uploaded to the bacula-patches 2.2.x release area.  This bug may
896 also be part of the problems reported in bug #935 and possibly
897 #903.
898
899 Also in the bacula-patches 2.2.x area, you will find other
900 patches that fixes bugs #953, 966, 967, 965, 958, 908, and
901 955. Please refer to bugs.bacula.org for the details.
902
903 Though this bug quite serious (data loss), it should be rare.
904 However, we recommend everyone to apply the patch.
905 ;;;
906 Kern;;;2007/9/14;;;14:30 
907 Bacula version 2.2.4 Released 
908
909 This version of Bacula is a minor bug release to version 2.2.3.
910 It contains the following fixes:
911
912 - Possible fix for authorization problems bug #953.
913 - Possible fix for bug #908.
914 - Add waits to multiple exit detection code to try to force pid
915   file to always be deleted.
916 - Restore good dev.tar.gz to rescue set appropriate binary property.
917   This fixes bug #950.
918 - Fix seg fault in error exit of acquire_for_read after unsuccessfully
919   trying to switch drives by checking for blocking before unblocking.
920   Fixes bug #906.
921 - Cancel storage daemon in all cases where FD reports error. This
922   should fix virtually all cases of bug #920 and will ensure that Devices
923   are released as soon as possible.
924 - Fix error message that was clobbered when Dir tells SD it does not
925   have write permission on Volume.  This should fix a minor point
926   in bug #942, but not the main problem.
927 - Fix migration code to get correct Volume name with multiple volumes 
928   by skipping |.  Fixes bug #936.
929 - Implement patch supplied by Landon to fix bug #944 where using
930   TLS with bconsole uses 99+% of the CPU.
931 - Fix bug #946 about "bacula-dir -t" which doesn't works
932   as expected.
933 - Using "m" in bconsole will show messages as in prior versions
934   and not memory usage.
935
936 - Note, you need GTK >= 2.10 to be able to link the Tray Monitor
937   program.
938 ;;;
939 Kern;;;2007/9/9;;;14:30
940 I regret to announce that there is a rather serious bug in Bacula.
941
942 Bacula bug #935 reports that during a restore, a large number of files are 
943 missing and thus not restored.  This is really quite surprising because we 
944 have a fairly extensive regression test suite that explicitly tests for this 
945 kind of problem many times.
946
947 Despite our testing, there is indeed a bug in Bacula that has the following 
948 characteristics:
949
950 1. It happens only when multiple simultaneous Jobs are run (regardless of
951 whether or not data spooling is enabled), and happens only when the
952 Storage daemon is changing from one Volume to another  -- i.e. the
953 backups span multiple volumes, and it only happens for Jobs writing
954 to the same volume.
955
956 2. It has only been observed on disk based backup, but not on tape.
957
958 3. Under the right circumstances (timing), it could and probably does happen
959 on tape backups.
960
961 4. It seems to be timing dependent, and requires multiple clients to
962 reproduce, although under the right circumstances, it should be reproducible
963 with a single client doing multiple simultaneous backups.
964
965 5. Analysis indicates that it happens most often when the clients are slow
966 (e.g. doing Incremental backups).
967
968 6. It has been verified to exist in versions 2.0.x and 2.2.x.
969
970 7. It should also be in version 1.38, but could not be reproduced in testing,
971 perhaps due to timing considerations or the fact that the test FD daemons
972 were version 2.2.2.
973
974 8. The data is correctly stored on the Volume, but incorrect index (JobMedia)
975 records are stored in the database.  (the JobMedia record generated during
976 the Volume change contains the index of the new Volume rather than the
977 previous Volume).  This will be described in more detail below.
978
979 9. You can prevent the problem from occurring by either turning off multiple
980 simultaneous Jobs or by ensuring that while running multiple simultaneous
981 Jobs that those Jobs do not span Volumes.  E.g. you could manually mark
982 Volumes as full when they are sufficiently large.
983
984 10. If you are not running multiple simultaneous Jobs, you will not be
985 affected by this bug.
986
987 11. If you are running multiple simultaneous Jobs to tapes, I believe there is
988 a reasonable probability that this problem could show up when Jobs are split
989 across tapes.
990
991 12. If you are running multiple simultaneous Jobs to disks, I believe there is
992 a high probability that this problem will show up when Jobs are split across
993 disks Volumes.
994
995 13. The bug concerns only the Storage daemon so there is no need to update
996 the clients, though I do recommend updating the Director when installing
997 an updated Storage daemon.
998
999 I have uploaded patches to bug #935 (bugs.bacula.org) that will correct
1000 version 2.2.0, 2.2.1, and 2.2.2.  The patch has been tested only on version
1001 2.2.2 and passes all regression tests as well as the specific test that
1002 reproduced the problem. 
1003
1004 The patch has now been confirmed to fix the problem reported, and Bacula
1005 version 2.2.3 has been released to Source Forge.
1006
1007 For the technical details of the bug, please see: 
1008
1009   http://www.bacula.org/downloads/bug-935.txt
1010
1011 ;;;
1012
1013 Kern;;;2007/8/11;;;14:30
1014
1015 Bacula Version 2.2.0 has been released to Source Forge.         
1016
1017           Release Notes for Bacula 2.2.0 
1018
1019   Bacula code: Total files = 520 Total lines = 195,550 (*.h *.c *.in)
1020   82 new files, 41,221 new lines of code, 208,380 lines of change from 2.0.3
1021
1022 This Director and Storage daemon must be upgraded at the same time,
1023 but they should be compatible with all 2.0.x File daemons, unless you
1024 use some of the new features that affect the FD.  In other words, you should
1025 not have to upgrade all your File daemons when you upgrade. There is
1026 no database upgrade needed from version 2.0.x to 2.2.0.
1027
1028 Areas requiring caution or testing:
1029 - You must have the thread safe version of MySQL client libraries loaded
1030   to build with MySQL enabled.
1031 - Volumes are pruned only when absolutely necessary -- this may cause
1032   your database to grow compared to prior Bacula versions.
1033 - Solaris door and even port files are no longer restored (equivalent
1034     to what we do with sockets).
1035 - SQLite is no longer supported for Solaris -- it fails too often with
1036   bus errors.  SQLite3 should work on Solaris.
1037 - The default setting for SQLite3 is now 'PRAGMA synchronous=OFF'.
1038   This makes it run 30 times faster, but increases the possiblity
1039   of a corrupted database if your server shuts down unexpectedly.
1040   The default behavior can be changed in src/version.h
1041 - Restore on Win32, and in particular on Vista is untested. Please
1042   test before relying on it.  It should backup and restore reparse
1043   points.
1044 - Win32 servers are untested, and very likely not to work.
1045
1046 The major new features are:
1047 - Much faster insertion of attributes (somewhere around 10 times),
1048   many thanks to Eric Bollengier and Marc Cousin. 
1049 - First release of bat (Bacula Administration Tool).  Note to build
1050   bat you must explicitly enable it on the ./configure line, you
1051   must have the Qt4 version 4.2 or later libraries loaded, the qwt
1052   (Qt Graphics) package loaded, and qmake and the other Qt4 tools 
1053   must be available. Most of the implementation was done by Dirk Bartley.
1054 - Red/Black restore in memory tree (500 times faster loading).
1055 - The Regex Where code to allow easier relocation of restored files 
1056   thanks to Eric.
1057 - Socket level heartbeat for all connections (untested).
1058 - posix_fadvise() use in the FD to improve performance reduces
1059   swapping due to opening/reading lots of files. Win32 equivalent
1060   implemented.
1061 - Much improved Volume reservation code that should eliminate most
1062   conflicts experienced in multiple drive autochangers.
1063 - Simpler locking in the SD in the reservation system.
1064 - Detection of file size/date change during backup if enabled.
1065 - New Recycle Pool feature -- thanks to Eric.
1066 - Efficient implementation of very large include/exclude lists.
1067 - Volumes are no longer pruned during 'status dir'
1068 - Pruning is now more efficient, and if a Volume is purged,
1069   during pruning, it is immediately discovered.
1070 - License is now GPL v2 without modifications, fix a few copyright
1071   mistakes made when adding FSFE copyright notice.
1072
1073 New ./configure options:
1074 - --enable-bwx-console    
1075 - --enable-bat
1076 - --with-qwt=
1077 - --with-db-name=
1078 - --with-db-user=
1079 - --enable-batch-insert
1080
1081 New bconsole commands:
1082 - exec
1083 - memory
1084 - update recyclepool
1085 - .sql
1086 - .api
1087 - .pwd (in restore tree)
1088 - restoreclient (keyword)
1089 - backupclient  (keyword)
1090 - regexwhere    (keyword)
1091 - update jobid  (new command)
1092 - recyclepool   (keyword) 
1093
1094 New directives:
1095 - Heartbeat Interval (bconsole.conf)
1096 - Heartbeat Interval (bacula-dir.conf in Director, Client, Storage)
1097 - TLS Allowed CN     (bacula-dir.conf in Client)
1098 - Regex Where        (bacula-dir.conf in Job)
1099 - Strip Prefix       (bacula-dir.conf in Job)
1100 - Add Prefix         (bacula-dir.conf in Job)
1101 - Add Suffex         (bacula-dir.conf in Job)
1102 - Recycle Pool       (bacula-dir.conf in Pool)
1103 - FailJobOnError     (bacula-dir.conf in RunScript)
1104 - CheckFileChanges   (bacula-dir.conf in FileSet)
1105 - StripPath          (bacula-dir.conf in FileSet)
1106
1107 Other features or bug fixes:
1108 - Fixed bugs: 916, 910, 917, 914, 906, 907, 
1109   842, 830, 893, 861, 888, 886, 807, 877, 872
1110   885, 887, 864, 874, 882, 881, 863, 859, 
1111   856, 854, 845, 847, 846, 809, 772, 
1112   822, 825, 824, 808, 802, 797, 798, 795, 789, 791, 
1113   788, 780, 763, 782, 612, 767, 775, 621, 772, 764, 
1114   766, 621, 761, 755, 750, 741, 747, 742, 744, and 743.
1115 - Configure bat with --enable-bat. Define qwt libraries with
1116   --with-qwt=<dir>. See Installation chapter of manual for details.
1117 - Create a depkgs-qt package that has both Qt4 and qwt, which are
1118   needed to build bat. Most modern Linux systems will have both
1119   these packages in the distro.
1120 - Storage overrides delete all previous storage definitions instead
1121   of prepending.
1122 - One should be able to mount and unmount removable devices if the
1123   Device resource has Removeable Media set and the mount and unmount
1124   directives are defined.
1125 - ./configure will do a better job of searching for qwt libraries.
1126 - The Win32 version can no longer be shutdown from the tray monitor.
1127   Use the command line or the Services panne.
1128 - Keep prune_volumes() from pruning the whole Scratch pool.
1129 - More debug output in status storage.
1130 - Correct moving a Scratch volume from pool to pool (some
1131   critical columns were lost).
1132 - Different locking in reservations and despooling systems,
1133   which means more micro-locking and less macro-locking, which
1134   should give a lot more concurrency at the expense of slightly
1135   (<0.1%) more overhead due to more locking/unlocking, but     
1136   concurrent jobs should run much faster.
1137 - Additional drive reservation algorithm that should solve a lot of
1138   the problems experienced with multiple drive autochangers.
1139 - Storage daemon status command enhanced to more clearly show Volume,
1140   pool and media type when a job is waiting.
1141 - Made bsmtp work with more strict SMTP servers.
1142 - Detect doubly freed buffers in smartall.c
1143 - wx-console renamed to bwx-console (Fedora request)
1144 - gnome-console renamed to bgnome-console (Fedora request)
1145 - Migration preserves original job's FileSetId
1146 - Spooling implemented for migration jobs.
1147 - Config files can be read through a pipe, by specifying a leading |
1148   in front of the configuration path/filename.
1149 - New memory command (bconsole) that will print the current Director's
1150   memory usage, and an in use buffer dump.
1151 - Console name changed from *Console* to -Console- to accomodate Win32
1152   filename restrictions.  
1153 - Corrected the Win32 ftruncate bug.
1154 - Additional version information added to Job reports.
1155 - New -8 option for bsmtp to specify UTF-8 encoding type.
1156 - bsmtp will no longer add < > to target (from, to, cc) if there
1157   is already a < in the target.
1158 - Prefer Mounted Volumes extended to mean a volume that is being
1159   mounted by another job.
1160 - Runscript timing set to same as version 1.38.11
1161 - New TLS Allowed CN directive(s) permitted.
1162 - New bconsole 'exec' command to run external script/command.
1163 - Turn on FreeBSD/OpenBSD code to set EOT model on tape.
1164 - Drop from root done before database is opened.
1165 - Database user and name can be configured with:
1166   --with-db-name=name --with-db-user=user
1167 - Turn on wait_for_drive in mtx-changer script.
1168 - Rework how bar codes are handled in mtx-changer script.
1169   This appears to have been an unreported bug.
1170 - Updated nagios plugin supplied by Christian Masopust
1171 - Better restricted console ACL checking.
1172 - New Client Connect Wait directive in Storage daemon so that
1173   users can configure how long SD waits for FD connection.
1174 - Bacula will no longer permit pruning of the currently running
1175   job (note, if other jobs are running, they may be pruned).
1176 - Sockets are no longer restored.
1177 - dbcheck works in 300K chunks so will typically run faster.
1178 - Include/Exclude lists can now be efficiently handled for quite
1179   large sizes -- tens of thousands of entries.
1180 - Several memory leaks in migration and database usage were fixed.
1181 - New console keyword restoreclient, which specifies the client to
1182   which the restore will be sent. The client keyword specifies 
1183   the backup client. The restoreclient keyword is optional if it is
1184   not specified, the backup client will also be the restore client.
1185 - The disk file size is now checked to ensure that it agrees with the
1186   catalog value before Bacula will append to the disk (same as tape
1187   and DVD).
1188
1189 ;;;
1190
1191 Kern;;;2007/3/6;;;14:30
1192
1193 Bacula Version 2.0.3 has been released to Source Forge.
1194 This is a bug fix release to version 2.0.2.  If you are upgrading from
1195 a version older than 2.0.0, please be sure to read the important notes
1196 below.
1197
1198 Also, please check the patches directory in the current SVN or the
1199 patches release section on Source Forge for important bug fixes to   
1200 this version.
1201
1202 5Mar07
1203 kes  File migrate bug with Pool Occupancy using mediaid instead
1204      of jobids.  Fixes bug #795.
1205 kes  Fix orphaned buffers in filed backup and verify due to
1206      crypto buffers not freed during errors.  Fixes bug #789.
1207 04Mar07
1208 kes  Add smartctl call to bacula-sd.conf as an example of getting
1209      tape alert info.
1210 02Mar07
1211 kes  Add Client Connect Wait to Storage daemon to permit users to
1212      modify the time the SD waits for a FD connection.
1213 28Feb07 
1214 kes  Apply Command ACL filter to JobId list in restore command.
1215 kes  Correct typeo in var.c patch.
1216 27Feb07
1217 kes  Don't let Bacula prune File or Job records for the current Job.
1218 kes  Fix variable substitution pad + inc bug reported (with patch)
1219      in bug #791.
1220 26Feb07
1221 kes  Correct SQLite log table index as reported by Luca Berra.
1222 24Feb07
1223 ebl  Fix FIFO stuff, bacula tries to rewind the FIFO... Thanks to Andreas
1224 22Feb07
1225 kes  Fix a few places in lib/message.c where the open fd may
1226      not be zeroed.
1227 21Feb07
1228 kes  Add LANG=C to autoconf/randpass so it works with languages other
1229      than English.  Fixes bug #788.
1230 20Feb07
1231 ebl  Revert ClientRunBeforeJob as it was in 1.38.x
1232      This fixes bug #780
1233      You will not be able to generate Include/Exclude list any more.
1234      If you want to use this, you can apply 
1235      trunk/bacula/patches/testing/clientrunbeforejob_can_generate_include_exclude_list.patch
1236 19Feb07
1237 kes  Restore of sockets created false error messages because Bacula
1238      no longer restores sockets, but the code was still trying to
1239      set the attributes on a non-existent file. Reported by a user.
1240 16Feb07
1241 kes  Fix encryption deblocking bug, which caused some restored files
1242      to be truncated. This fixes bug #763. This is a CRITICAL bug fix.
1243 kes  Add FD event sequence order prepared by Eric -- for RunScripts.
1244 kes  Fix 12am/pm bug as reported in bug #782.
1245 15Feb07
1246 kes  Add quick disconnect FD code from 2.1.4 to 2.0.3.  This code
1247      causes the SD to release the FD as soon as the FD has sent
1248      all the data to the SD. After that the SD will do any final
1249      despooling (data and attributes) that are necessary. This
1250      allows laptops to disconnect much quicker from the network 
1251      after a backup.
1252 13Feb07
1253 kes  Apply Eric's ClientRunScriptAfter patch to 2.0 and 2.1.
1254 11Feb07
1255 kes  Optimize the use of the database a bit in the Status dir command.
1256      Only open it when needed, ensure that if any previous database
1257      was opened, it is closed.
1258 10Feb07
1259 kes  Modify dbcheck to handle orphaned JobMedia, Path, Filename,
1260      and File records in 300K chunks to be more efficient. This
1261      idea came from Juan Luis Frances (if I remember right).
1262 09Feb07
1263 kes  Update projects list.
1264 08Feb07
1265 kes  Fix dird/ua_cmds.c so that a cancel command checks if the
1266      console is authorized to cancel the job.  This fixes bug 
1267      #767.
1268 kes  Modify SD so that the VolCatJobs medium record is updated
1269      at the beginning of a Job rather than the end.  This
1270      fixes bug #775 where exceeding MaxVolJobs caused jobs
1271      to fail.
1272 kes  Added a mutex around getting and setting Volume information
1273      so that multiple simultaneous jobs will single thread.
1274 07Feb07
1275      Switch to using Subversion
1276 kes  Remove src/pygtk-console/ from configure
1277 06Feb07
1278 kes  Delete src/lib/btree.c from win32 build, then add rblist.c
1279      plus the entrypoints.
1280 kes  Apply patch supplied that corrects debug print
1281      in canceling jobs for max run time.  Supplied as
1282      part of bug #621, which was previously fixed.
1283 05Feb07
1284 kes  Test on job_canceled() and sd_msg_thread_done inside
1285      loop starting the message thread to avoid a race condition.
1286      Fixes bug #771.
1287 kes  Remove rl_catch_signal from console.c as it conflicted
1288      with the header definition. Fixes bug #765.
1289 ebl  Fixes bug #766 about RunsOnClient = Yes (case sensitive)
1290 04Feb07
1291 kes  Clarify some stored/acquire messages to indicate if the
1292      problem is with read or append.
1293 02Feb07
1294 kes  Fix memory leak with storage ids in cats/sql_get.c
1295 kes  Terminate watchdog earlier to avoid reference to released
1296      memory -- reported by Jason Austin.
1297 kes  Move closing the database from jobq.c to the director daemon
1298      termination routine. This fixes memory leaks for shadow jobs
1299      (i.e. migration jobs).
1300 kes  Free up the unique jobid chain items in migrate.c.  This fixes
1301      a memory leak problem.
1302 kes  Convert some ugly looking for statements to use foreach_alist
1303      in findlib/find.c.  This will facilitate converting the structures
1304      to use dlist (for large include/exclude lists).
1305 kes  Fix a bug in the btree.c and btree.h routines, then rename them
1306      rblist and add them to be built in src/lib.  Include some new
1307      methods written by Rudolf Cejka that make the code more readable
1308      (hides some of the ugly casting).
1309 26Jan07 (back port)
1310 kes  Implement item #12 on project list -- quick release of FD by
1311      the SD. This is noted in more detail above.
1312
1313 ;;;
1314
1315 Kern;;;2007/1/28;;;14:30
1316
1317 Bacula Version 2.0.2 released:
1318 28Jan08
1319 kes  Fix maxruntime bug #621.
1320 27Jan07
1321 kes  Get current main CVS .specs for RedHat, SuSE, Mandrake.
1322 26Jan07
1323 ebl  Implement the include JobID in spool file name project.
1324 kes  Reorder projects file in order determined by Jan 2007 vote.
1325 kes  Fix open of SQLite3 db where user does not have write permission
1326      so that DIR does not crash. Fixes bug #761.
1327 25Jan07
1328 kes  Change 'Device not configured to autolabel' from INFO
1329      to WARNING.
1330 kes  Fix jobq.c to restart failed jobs when Reschedule Times = 0
1331      which should restart an indefinite # of times.
1332 kes  Fix configure --help to print --with-mysql[=DIR]. Same for
1333      other DIR specifications.
1334 23Jan07
1335 rn   Fix msvc build problems. Fix bacula.dll exports for msvc build.
1336      Fix path quoting in SQLite scripts.
1337      Fix problems with SHGetFolderPath.
1338 19Jan07
1339 kes  Create patches/2.0.1-restart.patch. Fixes bug #755.
1340 18Jan07
1341 kes  Fix Job restart on error bug that promotes an Inc to a Full
1342      backup.  This should fix bug #755.
1343 kes  Add qt-console and first cut of code.
1344
1345 ;;;
1346
1347 Kern;;;2007/1/13;;;14:30
1348
1349 Bacula Version 2.0.1 has been released to Source Forge.
1350 This is bug fix update to version 2.0.0 and contains
1351 the following fixes:
1352
1353 -    Fix Bacula->Documentation link on Win32 to point to index.html
1354      instead of bacula.html. Fixed bug #750.
1355 -    Return JobId in db_get_job_record() when JobId==0. This should
1356      fix bug #741.
1357 -    Do not release source pointers when restarting a failed job.
1358 -    Add dynamic dll entry point for SHGetFolderPath to Win32 code.
1359      This *should* fix bug #747.
1360 -    Modify winbacula.nsi to substitute with g bin_dir_cmd. Should fix
1361      bug #742.
1362 -    Modify USTORE constructor to set an empty store_source string, 
1363      and don't copy the store_source string in a cancel.  Hopefully
1364      this will fix Arno's seg fault, bug #744.
1365 -    Add back code to disable conio in configure. Fixes bug #743.
1366 -    Correct the Options scanner in the FD to correctly handle  
1367      SHA1 option, which was eating the next option.  Reported by    
1368      Sebastien Guilbaud.
1369 -    Add code to indicate when the SD is spooling, spool wait, and 
1370      despooling as requested by Alan Brown.
1371
1372 ;;;
1373
1374 Kern;;;2007/1/4;;;14:30
1375
1376 Bacula Version 2.0.0 has been released to Source Forge.
1377
1378 There is an English Press Kit, written by Dan Langille at:
1379    
1380    http://www.bacula.org/about/press/presskit200.html.en
1381
1382 and a German version, translated by Arno Lehmann at:
1383
1384    http://www.bacula.org/about/press/presskit200.html.de
1385
1386 ;;;
1387    
1388 Kern;;;2007/1/4;;;14:31
1389
1390           Release Notes for Bacula 2.0.0
1391
1392   Bacula code: Total files = 438 Total lines = 154,329 (*.h *.c *.in)
1393
1394 ==== IMPORTANT Catalog update required =====
1395 - The database format has been updated from what was used in    
1396   Bacula 1.38.x.  You must manually update your database before 
1397   running Bacula 1.39.x or higher.  If you are using Bacula supplied
1398   RPMs this is not necessary as the RPM does it automatically.
1399   Please backup your previous version of the database before
1400   running the update.  The update script will be automatically
1401   installed in your scripts directory, or can also be found in
1402   <bacula-source>/src/cats.  It is called:
1403
1404      ./update_bacula_tables
1405
1406   It is necessary to run it only once the first time you move to
1407   a 2.0.0.  Upgrading the Bacula version thereafter does not
1408   require updating the database again.  Depending on the size of
1409   your database the script make take a bit of time, to run, but
1410   in general, it should be very fast.
1411
1412 ==== IMPORTANT new Win32 install procedure =====
1413   For Win32 migrations from versions prior to 1.39.0 nothing special
1414   needs to be done to upgrade.  Everything should be taken care of
1415   automatically.  The only thing not done is to delete the old C:\bacula
1416   directory mostly out of paranoia.
1417
1418 ==== IMPORTANT miscellaneous ====
1419 - The Gnome console program (gconsole) no longer functions as it
1420   should.More importantly, in restore mode, the restore tree is
1421   no longer shown in the left pane.  I suspect this is due to
1422   incompatible changes in the GTK+ API, and hence have given up
1423   on gnome and gtk+, as this has already happened several times
1424   previously.  At some point there will be a new GUI console.
1425 - The bacula-dir.conf directive Accept Any Volume has been
1426   removed because it was never implemented. You must delete all
1427   occurrence of this directive for the Director to run. The Storage
1428   daemon will automatically accept any valid Volume that you mount.
1429 - The --mandir ./configure option now points to the top level man
1430   directory.  The man files will be installed under mandir/man8 and
1431   mandir/man1 as appropriate.
1432 - You *should* be able to use 1.38.x FDs with version 2.0.0 Director
1433   and SD providing you do not use any of the new features (runscript,   
1434   data encryption). It seems to work here, but we do not guarantee it.
1435 - Your Director and SD must be simultaneously upgraded.
1436 - The restore command no longer uses the MediaType as the primary method
1437   of finding a suitable Storage device. Normally it will select the last
1438   device used to write a Volume. If no storage device is defined, it
1439   will use the old algorithm which selects the first Storage resource  
1440   with the correct MediaType.
1441 - The MD5/SHA1 hash codes kept in the database are now kept in a binary
1442   format compatible with the rest of the world. If you are running verify 
1443   jobs, you *must* do an InitCatalog or all files will show an MD5   
1444   difference.  Also, authentication uses the new algorithm by
1445   default, but *should* accept connections from older components (FD) using
1446   the old non-compatible algorithm. This has been tested, but more
1447   more testing is still needed.  
1448 - A stock SuSE 10.1 kernel may crash when Bacula runs and accesses
1449   the tape drive. Workaround, load the SuSE 10.1 version 2.6.16.21-0.25
1450   kernel or later. The SuSE 10.2 Alpha 5 or later kernel also works.
1451   This problem may also be present in certain Fedora FC5 kernels.
1452 - If you have been using the data encryption feature of 1.39.x, please
1453   be aware that certain combinations of encryption and other options
1454   with version 1.39.0 through 1.39.26 created Volume data that cannot
1455   be restored. We strongly recommend that anyone using encryption 
1456   carefully review his/her backups and at a minium do a Full backup
1457   with 1.39.28 of all encrypted data.  Robert Nelson has identified 
1458   and fixed it as follows:
1459      As of 1.39.27:
1460         No filters = Works fine
1461         Sparse = Works fine
1462         Compression = Works fine
1463         Encryption = Works fine
1464         Sparse + Compression = Works fine
1465
1466         Sparse + Encryption = Restore broken
1467         Sparse + Compression + Encryption = Restore broken
1468         Compression + Encryption = Restore broken
1469
1470      As of 1.39.28:
1471         Most combinations work, but some encrypted files are
1472         not properly restored.
1473
1474      As of 1.39.30:
1475         All combinations work fine except Sparse+Encryption.
1476
1477   Bottom line, if you are using data encryption, please test restoring
1478   data to be sure it all works correctly.
1479 - The current Volume format written by 1.39.22 is different from
1480   the format written by previous versions. The two formats
1481   are not compatible. Thus any DVDs written prior to 1.39.22 will
1482   be unreadable by version 1.39.22.
1483 - If you previously run a Bacula version prior to 1.39.30, the JobMedia
1484   data may not be correct for disk Volumes. This can cause incorrect
1485   seeking in versions after 1.39.30. If you experience what appears to
1486   be data I/O or integrity errors during restores, please add the
1487   following directive to your disk DEVICE resource in the Storage
1488   daemon conf file:
1489
1490     Block Positioning = no
1491
1492   This will turn off all seek requests during restores and avoid
1493   this problem.
1494 - VSS for Windows clients is now enabled by default.
1495 - Do not unload autochanger when doing "update slots"
1496 - Implement mount command for autochanger, see manual.
1497
1498 New Features in 2.0.0:
1499 - Turn on disk seek code for restores.
1500 - There is a partial but reasonable translation of the Bacula
1501   messages for French.  To install it, first configure and build
1502   Bacula, then as root run:
1503
1504     cd <bacula-source>/po
1505     make install
1506
1507   If you have your locale set properly you will get the translated
1508   messages.
1509 - Bacula now support Migration jobs that are documented in a new
1510   Migration chapter in the manual
1511   http://www.bacula.org/dev-manual/Migration.html
1512 - Data encryption is now implemented and is documented in
1513   a new chapter of the manual at:
1514   http://www.bacula.org/dev-manual/Bacula_Data_Encryption.html
1515 - Additional support for removable devices.  See the 
1516   Requires Mount, Mount Point, Mount Command, and Unmount
1517   Commands in the Storage daemon configuration chapter:
1518   http://www.bacula.org/dev-manual/Storage_Daemon_Configuratio.html
1519   Also see the Edit Codes for Mount and Unmount Directives in the
1520   same chapter.
1521 - Switch the Win32 build from using Microsoft C++ to using mingw32
1522   cross-compiling.  The initial work was done by Howard Thomson,
1523   then tweaked by me.  Robert Nelson then totally reworked the
1524   cross-compiling code so that it not only cross-compiles, but
1525   also compiles on Visual Studio, and at the same time, he added
1526   all the current Unix features to the FD, such as selection on
1527   drives, encryption support, building *all* the tools, ...
1528 - The Director and Storage daemon have now been ported to Win32.
1529   This code is working but should still be tested carefully
1530   before putting into production.
1531 - Bacula restore and bextract can now extract non-portable Win32 data to
1532   any client (including Unix/Linux clients). Of course, in doing so,
1533   the Microsoft specific permissions and ACLs will be lost.  Thanks
1534   to Thorsten Engel for this code.
1535 - The 260 character limitation for Win32 paths name lengths is now 
1536   eliminated thanks to Thorsten Engel. However, if you are using
1537   Volume Shadow Copy, please be careful to specify all the paths
1538   in the bacula-fd.conf file using a full path notation including
1539   the drive letter.
1540 - Eric Bollengier wrote new RunScript directives that includes
1541   the old RunBefore/AfterJob and ClientRunBefore/AfterJob features
1542   plus a *lot* more, allowing you to control just about every aspect
1543   of running scripts.  See the manual for detailed documentation.
1544   http://www.bacula.org/dev-manual/Configuring_Director.html#5227
1545 - SunOS ACLs should now work thanks to a patch from David Duchscher.
1546 - Apply days keyword patch from Alexander.Bergolth at wu-wien.ac.at
1547   If this patch is applied, the number of days can be specified with
1548   "list nextvol days=xx"
1549   or
1550   "status dir days=xx"
1551   This can be used to preview the next scheduled job (and the
1552   next tape to be used) on Fridays if there are no scheduled jobs during
1553   the weekend.
1554 - From Eric Bollengier. One can now using the bconsole wait command do:
1555    wait  (wait for all jobs to stop)
1556    wait jobid=nn
1557    wait jobuid=unique id
1558    wait job=job-name
1559 - Volumes can now be set to Enable, Disable, or Archive. If they
1560   are not enabled, Volumes will not be mounted.             
1561   Implement update volume enable=(on|off|true|false|archived|0|1|2)
1562 - Add Catalog message destination in Messages resource that puts the
1563   job report in the Log database table.
1564 - Writing/reading DVD Volumes is much more stable -- to the point
1565   of being useful. Thanks to Richard Mortimer.
1566 - Add enable/disable job=<job-name>.  This command prevents
1567   the specified job from being scheduled. Even when disabled,
1568   the job can be manually started from the console.
1569 - The database Id records should be 32/64 bit independent now. 64 bits
1570   can be enabled by changing one define and changing the appropriate
1571   table variable. Normally, you need 64 bits only for FileId.
1572 - Relative path specifications (i.e. ../xxx) are now permitted in
1573   the restore cd command.
1574 - When running multiple simultaneous jobs, most jobs that use spooling
1575   will now finish faster due to a mutex optimization made by Eric
1576   Bollengier.
1577 - Conf files containing UTF-8 marker at the head of the file as well as
1578   conf files containing Window cr/lf and Mac cr line termination characters 
1579   are now accepted thanks to Robert Nelson.
1580 - Windows tray status windows are scrollable and resizable.
1581 - Win32 external script execution is much more flexible -- handles
1582   spaces in names better, ...
1583 - Lots of DVD fixes -- writing DVDs is now reported to work.
1584 - Fix opening of database in a restricted console to respect     
1585   any Catalog ACL.
1586 - Much better automatic handling of multiple database catalogs in
1587   the restore command.
1588 - Permit multiple console/director resources in bconsole.conf.
1589   patch from Carsten Paeth calle@calle.in-berlin.de
1590 - Character substitution in Job/JobDefs WriteBootStrap.
1591   from Eric Bollengier.
1592 - Apply patch supplied in bug #656 to pass priority field
1593   in the run dialog to the Director in gnome console.
1594 - Add support of encrypted data stream to bscan from Eric.
1595   display data_len instead of data content (may be binary).
1596 - Add Enabled=xxx on update slots command.
1597 - Add host:port to connect failure messages to FD and SD from Dir/
1598 - Add WhereACL to console ACL list.  If nothing is specified, only
1599   the default is permitted for restore. Otherwise, *all* allows any
1600   path, or you can specify permitted paths. This should allow control
1601   over where users can restore files. This is untested.
1602 - Install man pages with 'make install'.
1603 - Add Media.Enabled flag to client backups for dotcmds.c
1604 - Enforce Media.Enabled=1 for a current restore to work
1605 - Require restore case 3 to have sqlquery permission to work.
1606 - Add -n option to bconsole to turn off conio -- used in bweb.
1607 - The bytes field in the terminated jobs part of the status
1608   command now reports in KB, MB, ... units.
1609 - When not descending into a directory, print the File= name that
1610   triggered it -- makes why not descending a bit clearer
1611 - Do not unload autochanger when doing "update slots"
1612 - Implement mount command for autochanger
1613 - Fix bug #462 incorrect error message printed when client script called
1614   from File= was not found.
1615 - Fix bug #558 (waiting for feedback) where Bacula needs too much time to
1616   do a rewind on Solaris when no tape is in the drive (Solaris does not
1617   have the detailed errno found on Linux).  Added Solaris specific code.
1618   Note, this may apply to other OSes as well.
1619 - The examples directory has a new bacula_mail_summary.sh file that
1620   creates a single email summary of any number of jobs. Submitted by
1621   Andrew J. Millar.
1622 - Add nagios plugin to the examples directory. Submitted by
1623   Christian Masopust.
1624 - Modify most restore error messages to be queued so that they
1625   appear at the end of the job rather than mixed with the restore
1626   listing where they could be "lost".
1627 - Apply patch supplied by user (slightly modified) to fix
1628   correct detection of holes in block devices and FIFOs.
1629   Bug # 506.
1630 - Added a report.pl program to the examples directory from Jonas Bjorklund.
1631 - Add two new queries to query.sql provided by Arno. One
1632   list volumes known to the Storage device, and the other
1633   lists volumes possibly needing replacement (error, ...).
1634 - Implement new code for changing userid and group at startup. This
1635   should get Bacula into the correct groups.
1636 - Implement support for removable filesystems -- device type directive
1637   and mount, unmount directives.
1638 - Transfer rates are now presented in a more readable format thanks
1639   to a user submission.
1640 - SD is now aware of what volumes are mounted. More information is printed
1641   in the Status report. You must take much more care now to unmount
1642   devices prior to removing tapes that Bacula has open or prior to
1643   changing a magazine. Don't forget to do a mount afterwards or the
1644   device will be blocked.
1645 - The Pool Maximum Volumes directive is now respected in all places.
1646 - A Storage device can now be specified in a Pool resource. It will override
1647   all other Storage specifications.
1648 - Most but not all directives accept true/false in place of yes/no.
1649 - A patch from Karl Hakimian that reads JobIds, FileIndexes
1650   from a database table for restore.
1651 - There are a number of new tables. Some such as the Location table are
1652   designed for user use in doing Volume Management software.
1653 - Maximum Changer Wait, Maximum Open Wait, Maximum Rewind Wait to
1654   accept time qualifiers.
1655 - Implement jobuid to replace old usage of job in keywords as
1656   suggested by Eric Bollengier.
1657 - Implement write variables for Python to set Priority (anytime), and
1658   Job Level, only during JobInit event.
1659 - Use the keyword ujobid to mean the unique job id; job or jobname
1660   to mean the Job name given on the Name directive, and jobid to
1661   be the numeric (non-unique) job id.
1662 - Allow the SD to use multiple drives during a backup/restore (only
1663   one at a time).
1664 - Integrate addition of line count limitation to bsmtp -l from
1665   Sebastian Stark <stark at tuebingen.mpg.de>
1666 - Split the bacula start/start script into four files:
1667    bacula         -- starts and stops calling other scripts
1668    bacula-ctl-dir -- starts/stops the director
1669    bacula-ctl-fd  -- starts/stops the File daemon
1670    bacula-ctl-sd  -- starts/stops the Storage daemon
1671 - Remove automatic case folding on Windows FDs. You must
1672   explicitly use the 'Ignore Case = yes' option.
1673 - Implement wild program in tools directory for testing
1674   wild-cards. Almost identical to the regex program.
1675 - Use the new bregex.c to implement Regex expressions on Win32.
1676 - Apply patch from Christopher Hull
1677   - Allow multiple connections to database with different
1678     parameters.
1679   - Invalidate the scheduler when doing a reload. Fixes seg
1680     fault, but still 60 second window.
1681   - Additional info in Reschedule message.
1682   - Use set_jcr_job_status() everywhere to prevent loss of
1683     cancel, error.
1684   - Display peer IP in FD if error from connecting DIR.
1685   - Don't increment file count for DIRBEGIN.
1686   - Replace illegal characters in Win32 filename by _.
1687   - Add SE_CREATE_PERMANENT_NAME privilege in Win32.
1688   - Hash hard link filenames rather than linked list (performance).
1689   - Fix for security failure in chdir on Win32.
1690   - Add CreateDirectoryA/W win32 API entry points.
1691 - programs to duplicate Bacula's base64 algorithm using standard
1692   routines. This fixes bugs #296, and 565. Patch submitted by
1693   author of bug #565.
1694 - Fixes to reloading the Dir conf file from Eric Bollengier and Christopher
1695   Hull.
1696 - Modify LICENSE to correct some problems pointed out by Debian.
1697 - Apply a patch submitted by cesarb in bug #606 to implement O_NOATIME support.
1698     O_NOATIME is a open() flag which makes it possible to read a file without
1699     updating the inode atime (and also without the inode ctime update which
1700     happens if you try to set the atime back to its previous value). It also
1701     prevents a race condition when two programs are reading the same file, but
1702     only one does not want to change the atime. It's most useful for backup
1703     programs and file integrity checkers (and bacula can fit on both
1704     categories).                                                    
1705   You enable it in the Bacula FileSet Options resource by setting:
1706      noatime = yes
1707   The effect of this option is similar to the keepatime option except
1708   it is more efficient and avoids modifying ctime.
1709 - Implement a pile of new man pages contributed by Jose Tallon.
1710 - Modify the database format for handling Migration jobs:
1711    Add PriorJobId, RealEndTime to Job table
1712    Delete MAC table
1713    Remove Stripe from JobMedia record (not used, wasting space)
1714    Add ScratchPoolId, RecyclePoolId, Enabled to Media record
1715    Add Cost to Location table.
1716    Enabled to Media table and Location table.
1717 - Security: harden authentication failure in FD by single threading errors
1718   and forcing a 6 second wait.
1719 - If using GCC (actually g++) add the following compiler flags
1720   -fno-strict-aliasing -fno-exceptions -fno-rtti
1721 - Turn on new bsnprintf() code.  The reason for this code is to
1722   eliminate the security problems associated with using the
1723   system libraries print routines.
1724 - Implement job report that indicates where Storage and Pool
1725   came from -- with overrides and Pool storage and NextPool,
1726   it is all very complicated.
1727 - Add more detail (Storage, Device) to list of volumes printed
1728   for restore.
1729 - Add new VOLMGMT message class. No messages are yet sent with this 
1730   class.
1731 - Improved Bacula rescue procedures -- see the Disaster Recovery
1732   chapter of the manual
1733 - Add spooling/despooling info in status output of SD.
1734 - Add Comment field to llist of a volume.
1735 - Allow true/false in many but not all yes/no directives.
1736 - The Bacula source code is now copyrighted by the Free Software 
1737   Foundation Europe. The Developer's Guide documents the new procedures,
1738   and the LICENSE file has been updated.
1739 - Apply Jaime Ventura's patch that implements the Messages resource
1740   Mail On Success directive.
1741 - The Client returns its Version string, which is printed in the Job
1742   report.
1743 - The Client returns whether or not VSS and Encryption are used, which
1744   are printed in the Job report.
1745
1746 Additional Features Added for Win32:
1747 - Added DriveType directive to the Director's Include Option FileSet
1748   resource.  Allowed values are: fixed, removable, cdrom, and remote.  There
1749   is only an implementation for Windows because it is the only platform that
1750   has the concept of drives.
1751  
1752 - Adds EnhancedWild directive to the Director's Include Option FileSet
1753   resource.  Allowed values are: yes and no.
1754  
1755   When EnhancedWild is enabled then the processing of the
1756   Wild, WildDir and WildFile is changed in the following ways.
1757  
1758   Patterns conform to Posix
1759       \ is not a special character in character classification []
1760       To match a - it must be the first or last character
1761       To match a ] it must be the first character
1762  
1763       fnmatch option FNM_FILE_NAME is specified * doesn't match a / 
1764       so it won't match multiple directory levels in a path
1765  
1766 - Relative WildFile patterns (ones without a leading /) match
1767   against the filename portion.  This in combination with the
1768   FNM_FILE_NAME fnmatch() flag makes directives such as WildFile =
1769   abc*.def work as expected.
1770  
1771 - Adds support for the shell's feature of brace expansion.
1772
1773   Here is an example where braces allow 24 lines to be expressed in 5.
1774
1775   # Exclude directories full of lots and lots of useless little files
1776   WildDir = "[A-Z]:/{Documents and Settings,{WINNT,Windows}/Profiles}/*/Cookies"
1777   WildDir = "[A-Z]:/{Documents and Settings,{WINNT,Windows}/Profiles}/*/Recent"
1778   WildDir = "[A-Z]:/{Documents and Settings,{WINNT,Windows}/Profiles}/*/{Local Settings,LOCALS~1}/History"
1779   WildDir = "[A-Z]:/{Documents and Settings,{WINNT,Windows}/Profiles}/*/{Local Settings,LOCALS~1}/Temp"
1780   WildDir = "[A-Z]:/{Documents and Settings,{WINNT,Windows}/Profiles}/*/{Local Settings,LOCALS~1}/Temporary Internet Files"
1781
1782 ;;;