1 Technical notes on version 2.5
5 command separator in console (!$%&'()*+,-/:;<>?[]^`{|}~)
6 examples/database/dbcheck.sql
7 enhancement to wait command: wait mount ...
9 filepattern (restore with regex in bsr)
14 kes Remove old mmap code from compat.h/cpp
16 kes Correct typo in Win32 Makefile editing
17 kes Correct typos in debug output.
18 kes Improved error detection in creating bsrs.
19 kes Add debug code to Win32 restore
22 ebl Cleanup director VolParam struct
24 ebl Replace File:Block in BSR by Address to fix #1190
26 kes Correct missing return in Darwin code.
28 ebl Copy joblog after a Copy job
30 kes Tweak block.c read to more closely simulate write for computing
31 block addresses and turn on disk block testing.
32 kes Implement a crude 'list joblog' mostly for debugging.
34 kes Fix Migration bug #1206 sql error with NULL FileSetId when no jobs
36 kes Fix Migration JobLog bug #1171. Get the JobIds correct.
38 ebl Fix segfault in bscan when using debug mode
40 kes Fix configure to do minimum Win32 configure so that make clean
42 kes Tweak modify FD header to use %ld instead of %d.
43 kes Remove hand scanning of FD header in SD and use Bacula's
44 sscanf, which is now OS independent.
45 kes Define new object (file/dir) begin and end Volume label records
47 kes Use new method of defining XATTR #defines to avoid need for having
50 ebl Rename all STREAM_ACL_..._T into STREAM_ACL_..
52 ebl Add a new lock manager that can detect deadlock situation
53 This new option is activated with a --enable-lockmgr configure
55 ebl Add new Director->MaxConsoleConnections directive
57 ebl Fix bacula-sd hanging after tape gets full + unload
59 ebl Remove extra db_lock() in get_prune_list_for_volume()
60 ebl Apply 2.4.3-prune-deadlock.patch that fixes a problem when
61 using Catalog as message backend.
63 kes Apply Marco's Darwin xattr patches.
67 kes Apply Marco's Extended attribute support patch.
68 kes Update projects file
70 kes More changes to ensure that during thread switches the jcr
71 is removed from the TSD.
72 kes Ensure that consoles attach jcr to thread, and that only the
73 thread attached is removed from the TSD.
75 kes Move definition of FileId_t to bc_types and define it once in the jcr.
77 kes Remove all time_t from arguments in favor of utime_t, which is
79 kes Add more debug to match_bsr.c and use %u for unsigned debug editing.
81 ebl Apply patch for bug #1182 about Recycle flag
82 that is not updated after a pool change.
83 kes Since the user has been warned, allow console purge command
84 to purge volumes that are in use.
85 kes Fix Win32 build to add new sd_plugins.c
86 ebl Apply patch from bug #1175 that reset the Slot and the Inchanger
87 flag in db_make_inchanger_unique().
88 ebl Remove a Emsg() after recieving a Fatal signal that can lock
91 kes Apply patch from bug #1187. It prints an error message if the
92 Maximum Block Size in the SD is too big.
93 kes Increase Maximum Block Size to 2,000,000 bytes.
94 kes Use doubly linked bsr list so that consumed bsrs may be
95 removed. Removing not yet implemented.
97 kes Implement a fix that very likely fixes the undesired volume
98 purge reported by Graham Keeling.
99 kes Implement bsr block level checking for disk files. However,
100 it does not work correctly in accurate tests, and all the
101 migration and copy tests, so it is turned off.
102 ebl Make SD plugins work.
104 ebl Apply Riccardo's patch to compile bacula+mysql on mandriva
106 ebl Add more variables accessible through the director plugin
109 ebl Do work on plugins
110 - fix compilation of the director plugins
111 - add plugin list to status dir output
112 - add director plugin dump after a fatal signal
113 ebl Apply Riccardo's patch that fix some win32 compilation errors
114 and a bug with bat version browser.
116 ebl Add Plugin debug after a fatal signal.
117 ebl Add db and rwlock debug after a fatal signal.
119 ebl Fix maxwaittime to fit documentation, this time is now counted
120 from the job start and group all wait periods.
121 ebl Add tips for postgresql to improve performance when having
122 multiple batch insert at the same time.
124 ebl Remove extra debug for db lock.
126 kes Apply Riccardo's second patch that cleans up the #include
127 file order + a few Win32 particularities to make bat work
129 ebl Add allow_transactions flag to mysql db backend.
130 kes Apply win32-fixes patch from Riccardo that makes the Win32
131 bat more stable and faster (but still slow).
133 kes Fix bug with job name duplication if more than 60 jobs created
135 kes Correct some bugs of cleanup in SD if the FD connection fails.
136 ebl Add code to get more information after a fatal signal.
138 ebl Apply Bastian's patch that add spooldata=yes|no option
141 ebl Fix bash shell to sh shell in database creation script
143 kes Fix orphaned jobs (possible deadlock) while pruning.
144 kes Use jcr stored in bsock rather than searching in getmsg.c.
145 This results in about a 5% speed improvement with four
147 kes Implement win32_chmod that uses wide characters, if possible,
148 to get and set the file attributes.
150 kes Apply pane freezing during updates patch from Riccardo Ghetta.
151 kes Rework next_vol and autoprune a bit due to failure in
152 recycle-test. prune_volumes() now returns no status,
153 but should prune at least one Volume, if possible.
154 kes Modify check_if_volume_valid_or_recyclable to reject a
155 volume with Recycle set off.
156 kes Modify prune_volumes() to continue if volume Recycle is off
157 or if the volume has expired. Add more debug.
159 kes Fix bug #1046 VolumeToCatalog incorrectly reports mounted
160 filesystems as missing on the Volume.
161 kes Rewrite the set_jcr_job_status() code to include job status
162 priorities so that more important status changes occur but
163 lower priority status changes will not overwrite something
164 more serious. This could possibly cause reporting incorrect status
165 reporting in some cases. More testing is needed to ensure
166 I have the right priorities. This vastly simplifies the previous
168 Verify Diff status should now be correctly reported, whereas it
170 kes Reduce some debug output.
171 kes Apply Joao's patch to SQLite tables to make chars work.
173 ebl Fix #1175 About update slots that don't reset InChanger flag when
175 ebl Fix #1173 where prune_volume() returns a volume from the scratch.
177 kes Remove jobq.c constraint that read and write SD must be
178 different. This may lead to more deadlocks in the SD,
179 but they should be resolved there.
180 kes Ensure that job report is always printed even if job is failed
182 kes Don't print job report twice for failed VBackup jobs.
184 kes Fix editing of retention time difference to use 64 bit
185 int instead of 64 bit unsigned. This should permit very
186 long retention periods.
187 kes Implement code to prohibit a write job from appending to a
188 Volume that will be used for a read operation. This is
189 new code and could possibly cause some conflicts.
191 kes Integrate James Harper's Exchange Win32 plugin patch.
192 kes Apply patch from Marco van Wieringen that implements the new
193 Solaris libsec interface for ACLs so that Bacula can save and
194 restore both the new ACLs and old ACLs.
195 kes Marco's patch also corrects the file dependency generation code
196 so that it works properly both with shared libraries and static
198 kes Marco's patch also includes a small cleanup of the cats Makefile
199 to remove some references to non-existent files.
201 kes Modify win32 Makefiles to use full paths in most cases.
202 In particular add MAINDIR environment variable that points
203 to the main Bacula source directory.
205 kes Add read volume list code to SD -- not yet used.
206 kes Add James' binutils patch
207 kes Split volume management code out of src/stored/reserve.c into
209 kes Modify configure to do an automatic make clean. This ensures
210 that any changes to ./configure options are handled correctly.
212 Beta version 2.5.16 release:
214 ebl Rename JobStat table to JobHistory
215 kes Ensure that only normally terminated jobs are migrated.
217 kes Add Makefile dependency when using LIBTOOL_LINK so that any
218 change in ./configure options will be accounted for.
220 kes Fix typo in the ACL patch that I overlooked.
221 kes Apply Marco's libtool include patch.
223 kes Apply Bastian Friedrich's ACL patch to eliminate ACL
224 errors during restore.
225 kes Minor cleanup of create_restore_volume_list() code.
226 kes Fix typo in console Makefile.in
228 ebl Fix #1110 about RunScript that can't execute a script with
229 Unicode characters in the path.
231 kes Apply tray-monitor patch from Bastian Friedrich to make it
232 work with the new FD.
234 kes Apply cleanup patch from Marco
235 kes Apply patch from Marco van Wieringen <mvw@planets.elm.net>
236 that implements libtool to create shared objects out of
237 the Bacula libraries.
238 kes Fix tray-monitor so it will speak to new FD.
239 ebl Fix bug with ANSI label when volume name length < 6
240 ebl Fix segfault in debug level > 50 with btape.
241 ebl Remove warning message in btape when command is empty.
242 kes Fix Win32 build to pull in new BACULA define.
244 kes Change IncludeDir to Exclude Dir Containing.
245 kes Implement code to prohibit ExcludeDirContaining in an
246 Exclude section (same for Plugin and Options). A bit
247 of a kludge with RES_ITEM2 ...
248 ebl Add field to command list to restrict Runscript console
250 ebl Use a separate JCR when running Console command with Runscript.
251 ebl Permit to mark version as Beta in some outputs
253 kes Add plugin types in jcr.h to reduce need to cast.
254 kes Do better checking of plugin return values.
255 kes Free plugin context after calling pluginFree() as
257 kes Allow plugin to call JobMessage with NULL context.
258 kes Do not add plugin to global list if loadPlugin returns error.
259 kes Rework plugin.h a bit to reduce dependence on Bacula.
261 kes Move generation of bsr file for Virtual Backup to run section
262 so that it is generated just before actually running.
263 Suggested by Graham Keeling.
265 kes Add malloc and free Bacula entry points for plugins. Increment
266 FD plugin interface version. Create a Bacula plugin context
267 structure to keep track of whether or not the plugin is disabled.
268 kes Apply FileIndex fix for plugin name stream suggested by James.
269 kes List plugins in FD status report when debug > 0.
271 ebl Add a new VerId variable that is printed in version command.
272 kes Fix migration SQL not to migrate a job that has not terminated.
273 This is a partial fix to bug #1164.
274 kes Sort JobIds returned from db_accurate_get_jobids() to fix Virtual
275 backup start time bug reported by Graham Keeling.
277 ebl Fix possible bug in cancel_job() with job that are not
280 kes Fix bat build for Win32.
282 kes Copy plugin link field into ffpkt.
284 kes Integrate patch from Kjetil Torgrim Homme <kjetilho@linpro.no>
285 It provides FileRegex in bsr files and code to collect regex
286 from the user during restore, an Allow Mixed Priorities feature,
287 and documentation for the above.
288 ebl Remove db Berkeley from configure process
289 kes Do dirty check on hostname (Linux only) and if not resolvable
290 use localhost as default.
291 kes Increase vtape max block to 20GB.
293 kes Refactor restore code to create a close_previous_stream(). This
294 This may destabilize the source.
295 kes Implement planned startRestoreFile() plugin call.
296 ebl Remove missing Loaded information from status slots storage command.
297 ebl Fix Console command problem that cancels the job
298 kes Add more plugin restore debug code.
300 kes Fix plugin_bwrite - plugin-blseek mixup pointed out by James.
301 kes Rewrite plugin restore interface a bit to correspond to how Bacula
302 creates and writes to the restored file.
303 kes Add some DebugMessage() calls to the bpipe-fd.c program.
305 kes Apply Marco van Wieringen's set of patches, cleans up Migration/Copy
306 Implement 'Pool Uncopied Jobs', allow Solaris Compiler to build
307 Bat; allow add and delete in place of mark and unmark.
308 kes Another attempt to fix the endRestoreFile plugin bug noted below.
310 kes Apply dbi driver patch from Joao.
311 kes Correct a bug in passing the context to the endRestoreFile() plugin command.
312 Bastien Friedrich reported the bug.
313 kes Create plugin instance only when FD job starts.
314 kes Add new FD plugin event: bEventCancelCommand when
315 a cancel command is issued to the FD.
317 kes Add cmd_plugin flag to jcr so we can globally know if a
318 command plugin is running.
319 kes If command plugin running, do not attempt (for the moment)
320 to get Win32 extended attributes.
321 kes Ensure that proper Win32 flags are set in bfile packet
322 if plugin_bopen() works on Win32.
323 kes Remove generated src/plugins/fd/Makefile
325 kes Implement build and install of bpipe-fd.so plugin.
326 kes Rework the interface that passes packets to the plugin
327 so that the packet is started and ended by the packet size.
328 This allows the driver to do a sanity check.
330 kes Rework the pluginIO Bacula internal code to enable
331 proper handling of Win32 error codes from GetLastError.
332 kes Apply Joao's patch to regress startover_libdbi.
334 ebl Add -B option to dbcheck to get catalog information
335 kes Fix Win32 build to include new library function.
336 kes Remove some old reader/writer code.
337 kes Implement ./configure --with-plugindir=xxx
338 ebl Fix the mysql bug in the new accurate code
339 kes Improve plugin debug. Create plugin test.
340 kes Set main thread specific data to INVALID because it
341 has no jcr. This allows debug output to work correctly.
342 kes Add src/plugins/fd/Makefile to ./configure process.
343 kes Make first cut attempt to correct SQL that computes the current
344 Pool usage. This is to fix bug #1159.
345 kes Do a bunch of plugin cleanups for Win32 and more careful checking
346 of PluginDirectory and whether or not a plugin was found.
348 kes This code should fix the race condition that leads to a Director
349 crash at job end time when the job list is updated. This was reported
351 kes Add more plugin documentation and fix include of config.h for
352 Win32 build (I hope).
354 ebl Revert to htable instead of rblist
355 ebl Cleanup accurate code (remove tcdbm parts) and use red/black
356 tree instead of htable.
357 ebl Use a dedicate DB link to compute and send the accurate list
360 kes Fix compile errors in filed/fd_plugin.c.
362 kes Remove all double quotes from SQLite creating script and
363 replace by single quotes as suggested by John Huttley.
365 kes Apply dbcheck patch from Yuri Timofeev <tim4dev@gmail.com>.
366 It significantly improves the performance of dbcheck for
368 kes Fix bad debug code call in src/filed/accurate.c
370 kes Change two Jmsgs in accurate to Dmsg to reduce unnecessary
371 output. Perhaps we really need to implement M_SAVED.
373 kes Fix bug #1156 FD crash during processing of Accurate data.
374 kes Tweaks to htable code to improved debugging and make names
375 a bit more meaningful.
377 ebl Remove time_t from update_stats()
379 kes Modify the license of the example plugin program to allow
380 it to be used by anyone for making a Bacula plugin.
381 kes Make apply_rp_codes() in bpipe-fd.c be static.
383 kes Remove Encryption and Accurate lines in vbackup output -- not used.
384 kes Fix subtle bug in vbackup by not changing DEV_RECORD packet.
385 kes Add host name to items printed during dump.
386 kes Make Check File Changes default on.
388 kes Set the default FD timeout to 3 minutes (previously 30).
389 kes Apply Bastian Friedrich's weird spelling correction patch.
391 kes Always print Verify hash differences. Rename variable to make the
392 code slightly more readable.
394 kes Correct tests for MaxFullInterval as reported by
395 Ulrich Leodolter <ulrich.leodolter@obvsg.at>..
396 kes Fix MaxDiffInterval code as well.
397 kes Enable Win32 plugin load code in lib.
398 kes Make Verify code that computes disk checksums use the same
399 algorithm as backup when dealing with sparse files.
400 kes Attempt to run VSS on any systems newer than Vista -- should
401 make it work on Windows Server 2008.
402 ebl Change the new statistic implementation. Remove the UseStatistic
403 directive and add a 'update stats [days=...]' command. You can
404 now decide when copy job records from Job table to JobStat.
405 Statistics are much more accurate with this.
407 kes Fix SQL case problem that may cause the failure of DiskToCatalog
409 kes First cut adding SD plugins.
411 kes Add Slot if it is non-zero to writing bsr file after a
413 kes Change a number of bnet_fsend() into class method calls.
414 kes Begin audit of diff of 2.4 branch to trunk code.
416 ebl Fix the mysql creation script that double-created an
417 index of the same field on the Media table.
418 Add an index to on VolumeName to the Media table for mysql.
420 kes Another try at fixing Vbackup. It looks much better this time.
421 Disable file index sanity check in FD with value stored in
422 attributes record because with Vbackup the File Index gets
423 changed, but not the attributes record.
424 Enhance some debug code.
425 Fix handling of re-indexing records that are copied in Vbackup.
427 kes Made level_to_str() know about Virtual backup.
428 kes Set correct Virtual backup write pool.
429 kes Fix compile warning in new dbcheck port code.
430 kes Fix migration code broken by previous virtual backup fix.
432 kes Fix problem of Virtual backup not writing a sequential FileIndex.
433 kes Reset Virtual backup time/date to the value from the last backup.
434 kes Ensure that storage name is passed to SD on read.
435 kes Correct a problem with Level and Virtual backup, rework how
436 bsrs are printed in debug to use standard routine.
437 kes Apply patch from Chris in bug #1133 that provides alternate db port
439 ebl Remove catalog dependency from bcopy tool.
440 ebl Modify catalog scripts to have an easier packaging integration,
441 using default variables.
442 Make difference between SQLite3 and SQLite in db_get_type()
444 kes Apply most of changes in a patch from:
445 Michael Stapelberg <michael+bacula@stapelberg.de>
446 that allow the Bacula FD to compile on IRIX 6.5.
448 kes Apply patch from Bastian Friedrich that accepts a yes on a
449 delete volume command line.
450 kes Attempt to fix bug #1128 InChanger flag cleared during Migration
451 job when reading from one autochanger and writing to another.
452 kes Minor tweaks (copyright dates convert to use method instead of bnet).
454 kes Fix NULL Volume error when reading (or Migration or VBackup) must switch
455 drives when no tape is mounted.
457 kes Add additional info to some SD messages.
458 kes Add fix supplied by Martin Simmons for turning off EOL character
459 in new console multi-command code.
461 kes Fix a Verify InitCatalog problem where in certain cases
462 a garbage filename may be entered in the verification database. This
465 kes Add VSS 64 bit dll entry point in src/win32/filed/vss_generic.cpp
466 sent in by Riyas Yoosuf.
468 kes Fix seg fault in Dir during estimate command with no level value
469 given. This fixes bug #1140.
471 kes Add message to migration job when the target job is already migrated.
472 This closes bug #1129.
475 kes Raise some restore debug levels.
476 kes Replace off_t by boffset_t where ever I found it.
478 kes Define a machine dependent ioctl request type for use with
481 kes When a migration job actually runs, re-check the Job record
482 and skip if the job is already migrated. This should
483 significantly reduce the problems with bug #1129.
485 kes Set MALLOC_CHECK_=0 in environment before starting Bacula to
486 turn off glibc checks that prevent getting good dumps.
487 kes Implement console 'wait mount' command. Doesn't yet work.
488 kes Implement timeout=nn on console 'wait mount timeout=nn' command.
489 kes Break the do_swapping into do_unload, do_swapping, and
490 do_load. It is much more logical that way.
491 kes Implement a set_dcr_from_vol subroutine in acquire.c for
492 reading volumes. This allows the dcr to be refreshed after being
493 zapped when the wrong volume is mounted.
494 This should fix bug #1126 -- During multiple tape restore, bacula
495 does not ask for physical tape change, but rereads same tape
497 kes Apply patch submitted for bug #1107 with a small modification.
498 This fixes a bug where bcopy copied too many records.
499 kes Make some tweaks to bsmtp based on patch submitted in bug #1124.
500 This fixes bug #1124.
501 kes Make the default bat restore Pool be Any. This fixes bug #1118.
503 kes Remove debug statement that crashes the SD at the end of
504 a tape during restore. Fixes bug #1125.
506 kes Implement Win32 bat changes made to Branch-2.4
508 kes Tweak separator command in console to start disabled and
509 allow defining no separator character. Also make code a
510 bit more fault tolerant.
511 kes Make btraceback write the traceback to the working directory
512 before attempting to mail it.
513 kes Add a RFC to Projects.
515 kes Attempt to implement a kludge to make Qt work with bat
517 kes Setup rstorage correctly. Virtual backups are working.
519 kes Move setting JobLevel and JobType into a method, which should
520 allow completing Virtual Backups.
521 kes Fix verify jobs to work again.
523 kes Virtual Backup tweaks -- it is close to working.
525 kes Ensure that SD tried to mount a volume not in an autochanger
526 at least once before asking for operator intervention.
527 kes Make SD aware of Virtual Backup jobs.
528 kes Add VirtualFull for bat.
529 kes Changes to get read storage correct for Virtual Backup.
531 kes Remove old code from label.c
532 kes Split display_display_info() out of write_bsr_file()
533 kes do_vbackup_init() working -- i.e. bootstrap file built.
534 kes Change Bacula trademark owner from John Walker to Kern Sibbald
535 kes First non-working cut of vbackup
536 kes Correct FD heartbeat code to use volatile variable accessed by
538 kes Zero thread id with memset if on Win32 in case it is a struct.
539 kes If cannot create JobMedia record, continue to try to write eof
540 and clean up in block.c
542 kes Add code to interface OpenSSL to new Win32 pthreads code which
543 used a structure for thread_t.
545 ebl tweak bat for win32 compilation
547 ebl Remove tokyo cabinet from the source
548 ebl Update configure/autoconf to support berkeley DB
549 ebl Add a sort to db_get_file_list() to improve bsr construction time.
551 kes Add a mtx-changer.conf file that is not overwritten during
552 an upgrade. It fully configures the mtx-changer script.
553 kes Clear in-use bit on vol when unused while swapping.
555 kes Remove sleep at end of ./bacula
556 kes Clear hash packet for hardlinked files correctly. This corrects
557 a long standing bug where hardlinked files selected individually
558 would occasionally not be restored.
560 kes Apply Eric's patch to ensure that autoprune does not return
561 a Volume not in the autochanger unless requested to do so.
562 kes Correct bat restore display of multiple drives. This fixes
564 kes Do find_a_volume() each time an unload is done. This
565 fixes the failure of maxvol2-test.
567 kes Add some SD debug code.
568 kes Do find_a_volume() each time an unload is done.
569 kes Apply Joao's DBI patch that adds easier configuration of DBI drivers,
570 and adds --with-db-port to ./configure.
571 kes Use Qmsg() in job.c watchdog callback.
573 kes Release main control rwlock if ABORTing.
574 kes Make watchdog connect timeout queue messages rather than sending
575 directly to avoid lock conflicts with the real thread.
576 kes Add const char in dbd.c to avoid compiler warnings.
577 kes Fix python compiler string warning. Note, IMO the GNU C++
578 compiler guys have made a *very* bad change to their compiler.
579 They now force all strings to be 'const' unless you explicitly
580 cast them, which is extremely ugly and ruins nice code as well
581 as creates a lot of useless work.
583 kes Fix mtx-changer to detect both versions of Ubuntu (Debian)
584 mt. This fixes bug #1116.
585 kes Add const in python files to reduce compiler warnings.
586 This may have to be backed out because of later compiler
588 kes Fix failure of 2drive-concurrent-test. Always read label;
589 clear_unload() only after drive is defined in acquire_for_read().
591 kes Generally clean up the manual tape loading code. The main
592 conceptual change is that when a volume is marked to be unloaded,
593 its volume name is retained, and it is only marked as unloaded
594 when either the autoloader says it is unloaded or another tape
595 is read on that drive.
597 kes Add debug code and refactor subroutine in stored/mount.c
598 kes Fix format problem in bscan output reported in bug #1105.
599 ebl Fix get_next_volume_for_append logic with autochanger
600 - use pruned volumes if found
601 - don't reset the inchanger flag after getting a recycled volume
603 Fix recycle_oldest_purged_volume to take InChanger flag in account
605 ebl Add mmap/unmmap implementation for tokyodbm under win32
607 kes Make first step toward eliminating globals from config
608 scanning. Also should be a workaround for FORTIFY_SOURCE
609 GNU C bug -- fixes bug #1042.
611 kes Apply duplicate job tests to restarted jobs.
612 kes Copy more data when restarting a job so that run
613 overrides are kept. This should fix bug #1094.
615 kes More word alignment cleanup.
616 kes Fix bug where SD did not ask operator if the device could not
617 be opened. Reported by Eric.
619 kes Add dbuser to DIR conf file (replaces user).
620 kes Add --with-db-password to ./configure
621 kes Fix regress to handle db_password.
622 ebl Add new 'status storage slots' that list autochanger
624 ebl Update vtape driver to compile only under Linux.
625 ebl Fix a bug when restoring with a wrong mediatype.
627 kes Eliminate ints from conf files and structures to avoid
628 word alignment problems
630 kes Fix bug reported by Scott Barninger where the bacula script
631 refers to scripts in the wrong directory. Needed to meet the
632 requirements of recent FHS location changes.
633 ebl Disable vtape for FreeBSD.
635 ebl Modify disk-changer to check if slot contains something before
638 ebl Fix vtape on win32 and debian.
639 ebl Fix autoselect patch (cause segfault).
641 ebl Fix autoselect option broken for a while. Fix #1089. Need some
642 work with StorageId to be able to use a particular drive in a
645 ebl Rename vtape to vtape.
646 ebl Update vtape driver.
648 ebl Modify vtape driver to avoid sparse file.
649 kes Add make clean of qt-source directory during ./configure
650 kes Store last block number written to tape in DEVICE and
651 use it for testing for correct last block on EOT.
653 Release Version 2.4.0:
657 kes Make sure to clear JS_WaitMedia when operator mounts a Volume.
658 This fixes bug #1095.
660 kes Add create_postgresql_database.sql to Win32 installer. Should
661 fix problem reported by Juilio Monteiro.
662 kes Get correct slot when auto unloading a device. This fixes bug
665 kes Fix multiple media restore.
666 kes Make DEVICE Slot private and access it via a method.
667 Allows better control over when it is set and cleared.
668 kes Fix possible seg fault if SQL error.
670 kes Add Martin's fixes to argument scanning for the estimate
671 command. This fixes bug #1093.
672 kes Add debug code to SD.
673 kes Fix renaming a Volume, which used the wrong Volume name.
675 kes If operator has rewind tape, print warning, release tape and
676 try once more. If tape is positioned somewhere, something went
677 wrong, so mark the tape in error and try once more. Previously
678 this error was fatal, now it produces an error message.
679 kes Ensure correct volume name displayed during restore
680 kes Ensure that Volume is mounted for restore.
682 kes Fix a few more Coverity reported problems.
684 kes Apply Allan Black's status dir job count patch.
685 ebl Add information about IMPORT/EXPORT slots in mtx-script.
686 kes Enhance a couple of SD debug messages.
687 kes Tweak unload flag setting and ensure it is set during swap.
689 ebl Fix #1091 about bad output in estimate command.
691 kes Modify autochanger locking to attempt to avoid race
693 kes Make sure device not busy before doing label command.
694 kes Display open() errors except when polling. Previously too
695 many were suppressed. This should fix bug #1070.
696 kes Fix Win32 reparse points. Bacula will not recurse into any
697 reparse point directory, including mount points, unless the
698 directory is explicitly mentioned at the top level (same as
699 with Unix). A file that is linked to another file will be
700 backed up -- much as Unix does for hardlinked files.
701 This fixes bug #1041.
703 kes Remove double quotes from ChangeLog and ReleaseNotes
704 kes Remove StorageId test when pruning and recycling (Eric's changes).
705 kes Remove old form of locking when getting volumes -- causes deadlock.
706 kes Change bat dirstat layoutWidget to dirstatlayoutWidget to make
707 the name unique and to eliminate compile time error.
708 kes Add accurate.o to Win32 FD Makefile
710 kes Fix cats dll build on Win32 after db_update_job_end_record
711 calling sequence change.
712 ebl Switch to tokyo dbm instead of htable in accurate code
713 ebl Include tokyo dbm to bacula source tree
715 kes Fix buffer overruns detected by Coverity.
717 kes Tweak joblog display.
719 kes Implement --without-qwt
720 kes Fix layout of restore tree dialog
721 kes Add configure bat QWT libraries, so that bat can be built
722 with or without the QWT libaries.
724 ebl Add dummy tape driver for regression tests.
725 kes Make sure we unload the right slot when swapping.
727 kes Add debug times, reduce size of two-pool-changer test
729 ebl Tweak autoconf scripts for vtape
731 kes Improve SD reserve debug code.
732 kes Testing an improvement to free up volumes no longer in use.
734 kes Rework SD acquire for read to handle autochanger Volume
736 kes Implement regression that explicitly tests swapping a Volume
737 from one drive to another.
738 kes Enhance disk-changer to detect most error conditions.
739 kes Fix SD code so that it properly swaps a Volume between drives.
740 This fixes bug #1083.
742 kes Apply libdbi patch from Joao Freitas for regress and for
743 Bacula trunk. Regress now works with libdbi. Nice.
744 kes Apply .nobackup patch from bug #1077 submitted by
746 kes Apply Bastian Friedrich's patch that adds %p to edit the pool
747 name into jobs cloned via the run directive.
749 kes Prevent a Volume that is being swapped from being freed from
750 the volume list. This will most likely fix, at least partially,
752 kes Fix strippath so that it does not get a buffer overrun and crash FD.
753 This fixes bug #1078.
754 kes Remove 50 millisec wait in SD that broke debugger.
755 ebl Add MaxRunSchedTime option that specifies the maximum allowed time
756 that a job may run, counted from when the job was scheduled.
757 ebl Fix MaxWaitTime option that specifies the maximum allowed time that
758 a job may block waiting for a resource, counted from when the job starts
759 ebl Rename (add) Max(Incr|Diff|Full)WaitTime to Max(Incr|Diff|Full)RunTime
760 kes Apply patch from bug #1076 by Tullio Andreatta <t.andreatta@troppoavanti.it>
761 that implements multiple commands per line in the console when using
762 readline. Modify the default to use a semicolon as the command separator.
764 ebl Fix SQL query in migration code.
765 ebl Make accurate mode with hash disk pass regression tests
767 ebl Implement first cut of accurate backup with hash disk.
769 kes Force unload of volume when wrong volume mounted in SD.
771 kes Fix bat seg fault at termination.
772 kes Add Bacula generated version to bat about box.
775 kes Experiment with allowing multiple read jobs.
776 kes Move final volume swapping code to DCR method and
777 call it from acquire_for_read().
778 kes When wrong volume is mounted during read, unload_autochanger.
780 kes Integrate the libdbi changes from Joao Henrique Freitas
782 kes Stop searching for Volumes in SD askdir if DIR returns the
783 same volume name twice in a row.
784 kes Close bat console windows first to eliminate error message
787 kes Tweak the swap Volume from one drive to another code so that
788 it now seems to work.
789 kes Resolve several problems with recycling that broke the new
790 code (these problems are in 2.2.9 as well).
791 kes Remove the volume lock when calling the sysop code.
792 kes Don't mark a reserved volume with no writers as unused otherwise
795 kes Rework class structures for VOLRES, DCR, and DEVICE to make
796 the method names a bit more logical, and for more logically
797 handling the responsibilities.
799 kes Remove redundant code in terminating the scheduler that just
800 causes a seg fault in many cases.
801 kes Cleanup releasing a volume and make it a DCR method.
802 kes Improve algorithm for detecting pre-reserved volume and
805 kes Tweak volume swapping code so it works.
806 kes Correct name overloading in mount.c
807 kes Replace released flag in VOLRES with reserved and add access
808 methods for the VOLRES class.
809 kes Prevent volume from being released while being swapped.
810 kes Apply Bastian Friedrich's edit codes patch for the bpipe-fd
811 plugin that add %w (where) and %r (replace flag) editing to
813 kes Apply Bastial Friedrich's edit pool=%p patch for run clone
815 kes Refactor parts of stored/mount.c
817 ebl Add sanity checks for VolWriteTime and VolReadTime
818 ebl Take care of bad clock changes while computing VolWriteTime
819 and VolReadTime. This should fix or limit #1066
820 kes Correct error string numbers in dird/catreq.c
821 kes Restructure reserving, acquiring, and mounting volumes. Calls to
822 autochanger are deferred for mount.c -- simplifes the code.
824 kes Do not prune any running job. It just fails the job.
825 kes Lock the volumes when changing dev->reserved_device and marking
826 the volume unused otherwise the device can get reserved by
827 another job before the volume is released, thus blocking it.
829 kes Correctly detect Ubuntu systems, and add ubuntu platform directory.
830 kes Fix bug #1063, reuse of freed ptr in list nextvol.
831 kes Release regex compile buffer in filed/job.c
832 kes Add proper type of const char in sql_create.c
833 kes Turn off debug in daemon termination routines
834 kes Move free_volume_list() before devices are freed in stored.c
835 kes Fix reference to uninitalized stack variables in bregex.c.
836 This should correct bug #1067.
838 kes Fix possible seg fault in SD when freeing a volume entry.
840 kes Implement unload_dev() before swap device.
841 ebl Add statistics prunning with option and menu
842 kes Separate unload_dev() from unload_other_device() in autochanger.c
844 kes Apply patch from bug #1069 that corrects spurious error messages
845 when ACLs enabled on SGI but no ACL exists.
846 ebl Fix small segfault in bacula-sd when debug level is 500
847 kes Modify run_program() and run_program_full_output() to use
848 call by reference for the results string. This corrects a long
849 standing problem where the address of the string may be changed
850 in the subroutine but not in the calling program.
852 kes Re-enable code to remember last volume mounted on a non-tape
854 kes Add patch supplied in bug #1068 that fixes a SD crash when using
855 a Virtual autochanger.
856 kes Generate correct JobMedia records during spooling/despooling when
857 running concurrent jobs. Thanks to Tom Ivar Helbekkmo
858 <tih@hamartun.priv.no> for excellent analysis and testing.
860 kes Tweak hash algorithm for htable using Martin Simmons idea
861 for doing a circular shift.
862 kes Remember what volume is in VTLs (previously turned off for
864 kes Analysis of JobMedia records by Tom Ivar Helbekkmo <tih@hamartun.priv.no>
865 pointed out some problems in creating JobMedia records during
866 spooling with concurrent jobs. Fix the problem by updating the
867 start file position before despooling and generate a jobmedia
868 record at the end of despooling.
870 kes Fix handling of JobMedia records during spooling and when a
871 Volume is changed without actually writing data to the Volume.
873 kes Rework certain SD locking based on gdb tracebacks of deadlocks
874 sent by Eric. This code now uses only the volume_lock() rather
875 than the reservations lock when at EOM and acquiring a new
877 kes Ensure only one exit point in several subroutines.
879 kes Implement bsock code to permit locking. Use the new code in Verify
880 in the FD to prevent the heartbeat thread from disrupting the Verify
881 data sent to the Dir.
882 kes Modify SD locking to eliminate locking the reservations system from
883 outside the system. Use the volume lock when getting media data
884 and reserving a new volume at end of media.
885 kes Add Eric's volume_unused() fix to stored.c so that Volumes found
886 when SD starts are not locked into place.
888 kes Fix error compiling runscript code on 64 bit machines.
889 kes Tweak Win32 mount point code.
890 kes Fix a couple of bugs in the accurate code (bad sscanf, buffer not
891 cleared giving bad file estimate).
892 kes Implement BIG_MALLOC in htable code. Runs 2.5 times faster for
895 kes Keep Schedule run lists in order as suggested by
898 kes Implement autostart scripts for Debian.
899 ebl Implement upgrade catalog scripts.
901 ebl Apply jobstat patch for long term statistics. Have to implement
902 purge stats command and upgrade scripts.
903 kes Fix mtx-changer.in for broken Debian mt program.
905 kes Fix large number of JobMedia records reported by Eric Bollengier.
907 kes Apply doc fix from bug #1062.
908 kes Resolve crash and improper restore wx-console Win32 restore
909 GUI. Fixes bug #1065.
910 kes Update Win32 wxWidgets to latest version.
911 kes Attempt to do correct handling of Win32 mount points. Should
913 kes Fix Win32 FD backup/restore memory leak due to improper termination
914 of BackupRead/Write. This fixes bug# 1038.
916 ebl Reduce memory usage for accurate backup, working only with ctime
917 and mtime. (not all Lstat field)
918 About 40MB for my Linux system (400.000 files)
920 kes Add dcr->reserved_volume flag that allows us to release a volume
921 even if it is not vol->released. This allows maxvol2 to work when
922 Volumes expire and we are already writing to the device (i.e. a
923 volume is pulled out from under us by another job terminating after
924 we reserve the drive).
926 ebl Permit multiple command/console per runscript definition.
927 RunScript { command = /bin/true ; command = /bin/false ... }
928 ebl Add RunsWhen = AfterVSS to runscript. You can execute a command
929 (restart an application) just after the VSS snapshot on windows.
930 kes Don't zap dcr values during release_volume() as they might
931 have the next Volume to be mounted.
932 kes Fix AIX prototype.
934 kes Second cut of drive switching during backup.
937 kes Update Win32 version of wxWidgets to most recent version.
938 kes Tweak Copy job details.
939 kes Rework dir_find_next_appendable_volume to make a bit more effort
940 to find a suitable volume before giving up.
942 kes Make ask_sysop_to_create... to return if waken from wait.
943 This helps get out of blocked conditions.
944 kes Experimental implementation of switch_device in reservations.
945 kes Implement FD version to allow easier protocol changes.
946 kes Add Plugin Options string -- not yet passed to FD.
947 kes Implement PluginOptions ACL.
949 kes Attempt to correct problems with restores with autochangers and
950 use counts going negative
951 kes Rework SD status command and implement API for bat. Implements
952 header, runing waitreservation, devices, volumes, spooling,
953 and terminated status keywords.
954 .status storage=xxx <keyword>
955 kes Clarify TLS error message by adding double quotes around name.
956 kes Simplify SD/FD status code by putting api flag in STATUS_PKT
957 kes Pass jcr to tls routines so debug messages can be handled better.
958 kes Rework jobq resource allocation code, and possibly fix a bug
959 that caused reference counts to get out of sync.
961 kes Rename fd/dir plugin to use Bacula standard underscore.
962 kes Plugin work -- bring dir up to fd level.
963 kes Start implementation of VTL code
964 kes Fix Win32 build after adding new cats subroutine.
966 kes First cut at Duplicate Job implementation.
968 kes Fix bugs in MaxFullInterval and Implement MaxDiffInterval.
969 kes Start PluginOptions string, and refactor a bit of ua_run.c
970 ebl Apply Allan patch that permit to reset recyclepool.
972 kes Test patch -- possible fix or improvement for bug #1053
973 kes Refactor FD and SD status commands to permit new API code in
974 SD, and to fix Win32 build.
975 kes Win32 build is now working.
977 kes Implement 'MaxFullInterval' and start 'MaxDiffInterval' based on
978 some ideas in patch from Scott Bailey.
979 kes Begin implementation of duplicate Job control.
980 kes Fix some of Win32 build after recent additions.
981 kes Apply patch from Frank Kardel that implements 'honor no dump flag',
982 which causes the FD to detect whether or not the OS has the
983 honor no dump bit (*BSD systems), and if so, to skip backing up
984 any file with this bit set. The feature is enabled by setting
985 'honor no dump flag = yes' in the Options section of a FileSet.
987 kes Correct po warning message with datarootdir
988 kes Implement more code in dird.c to put configuration parsing in
989 a class rather than use globals.
990 kes Restructure SD status command for implementation of bat API
993 kes Suppress incorrect 'Will not descend from x into y' messages.
994 kes Eliminate FORTIFY_CODE=2 bug, and make first cut at removing
995 daemon globals used by parser.
996 kes Apply Joao's patch to separate DB_TYPE and DB_PROG in configure.
998 kes Fix free of plugin_list when none exists.
1000 ebl Apply accurate project patch.
1002 ebl Fix a segfault when using strip_path option. (Use of pm_strcpy
1003 on non-mempool object)
1004 kes First cut of converting FD .status to work with bat API.
1006 .status client=XXX header
1007 .status client=XXX running
1008 .status client=XXX terminated
1009 kes Implement first cut of Copy Job.
1010 kes Implement Catalog in Pool resource. It overrides catalog specified
1011 in the Client resource.
1013 kes Apply patch (with some difficulties) from Joao Henrique Freitas
1014 <joaohf@gmail.com>, which adds support for libdbi as a Bacula
1016 kes Add patch from Martin Schmid scm@apsag.com that checks to see if
1017 ftruncate() actually works. In the case of some (cheap) NAS devices,
1018 it does not, and so recycling NAS Volumes does not work. The code
1019 simply unlink()s the file, then recreates it. This fixes bug #1011.
1021 kes First incomplete cut of big malloc blocks for htable.
1022 kes Tweak plugin code.
1024 kes Plugin debug code + tweak a couple bat dialog layouts
1026 kes Fix creating first JobMedia record during Migration to include
1027 proper index. This caused slow restores of migrated jobs.
1028 kes Temp fix to plugin name file_index.
1029 kes Bacula backed up and restored a MySQL database.
1031 kes Implement plugin restore.
1032 kes Implement parsing of db_driver to give db_type index.
1034 kes First cut of plugin restore code.
1035 kes Fix bug #1047, which had a heap overrun when stripping certain paths,
1036 and do not strip paths on symbolic links.
1037 kes Set catalog backup database and user name from values specified on
1038 the ./configure line.
1039 ebl Fix #1031 about wrong pool source information in job report.
1041 kes Fix Win32 build.
1042 kes Remove a redundant jcr argument to find_files, match_files, and
1044 kes Implement '.status dir header|scheduled|running|terminated' that
1045 prints the requested status section. With the exception of the
1046 header, the other reports have fields separated by tabs (\t).
1048 kes Apply patch from Peter Much <pmc@citylink.dinoex.sub.org> that fixes
1049 a resource embedded run command to find a since time if no explicit
1050 since time was supplied on the command line.
1051 kes Apply state-file.patch sent by Allan Black <Allan.Black@btconnect.com>
1052 that updates the state file at job termination time in addition to
1053 when the daemon terminates.
1055 kes First version where a plugin did a backup.
1056 bpipe-fd.so created a backup file, wrote a test
1057 string to it, and Bacua could restore this fabricated file.
1059 kes Implement DB Driver = string for the DBI driver.
1060 kes Remove all old bdb_xxx.c code. Add dummy routines to bdb.c
1061 kes First cut of code for loading Win32 plugin dlls. Implement
1062 dlopen, dlsym, dlclose, and dlerror in src/win32/compat/compat.cpp
1063 and implement a dlfcn.h file based on opengroup's definitions of
1066 kes First cut plugin directives.
1068 kes Apply patch from bug #1049 to prevent stripping the path on a
1070 kes Attempt to fix bug #1047 where stripping a path corrupts the
1071 heap. Waiting for feedback.
1072 kes Correct the Mount message not to suggest labeling a new tape
1073 when doing a restore. Submitted by email by John Stoffel.
1074 kes Attempt to work around gcc FORTIFY_SOURCE bug that crashes the
1075 FD by using casting. Reported in bug #1042.
1077 kes A bit of crypto cleanup. More later.
1079 Release Version 2.2.8
1081 kes Apply patch from Martin to correct bug #1040, bscan sets existing
1083 kes Fixed important spelling error in doc -- bug #1045.
1085 ebl Fix bextract to be able to extract non-portable Win32 data to
1087 kes Move initialization of read/write res lock earlier in the code.
1088 This fixes the crash with a null conf file. This fixes bug
1090 kes Redefine CURES in lib/parse_conf to be URES and move it all
1091 into lib/parse_conf.c -- this responds to bug #1042, but does
1092 not fix it. The fix is not to compile with FORTIFY_SOURCE.
1093 kes Backport to 2.2.8 fix de-referencing a NULL pointer in the scanner from
1094 the trunk SVN. I don't think this was reported as a bug.
1096 ebl Fix a bug during tape initialization with MTSETDRVBUFFER.
1098 kes Fix Win32 build with new .def files and DLL_IMP_EXP ...
1100 kes Add DataDespooling and DataCommitting status (committing is
1101 the last despooling).
1102 kes Finish implementation of new reservations code noted below.
1104 kes Fix bsnprintf for float point numbers. I broke recently when
1105 parameterizing some variables. This fixes bug #1036.
1106 kes Undo recent reservations changes ... will apply them later
1107 when they work better.
1109 ebl Fixes #1034 which cause mysql to hang the connection after 8h
1110 ebl Change default statistics target of filename.name and path.path
1111 fields for PostgreSQL. This speeds lookup by indexes. Thanks
1113 kes A few more tweaks to new reservation code. Make sure to clear
1114 vol released flag when retaking volume. When reading label and
1115 label is bad mark volume unused. When recycling, mark volume
1116 unused so it can be renamed.
1118 kes Fix reserve_volume() so it doesn't release a volume in use
1119 (i.e. a volume entry not marked released). This should be
1120 the last part needed to fix bug #1018.
1122 kes Move Heartbeat documentation from Job to Director resource.
1123 This fixes bug #1033.
1125 kes Fix existing switch drive SD code to call autochanger to release
1126 any old volume. This must be done to keep the autochanger from
1127 releasing subsequently newly reserved volumes in doing a close().
1128 This should fix bug #1018.
1129 kes Fail if attempting to get console input in batch mode. This
1130 should help fail RunScript console commands that are incomplete.
1131 kes First cut implementing switch_drive() in SD (not actually called).
1133 kes Implement first cut running console commands in a RunScript.
1135 ebl Fixes bug #1028 where 'Selection Type' option was not usable
1137 ebl Fixes bug #897 and bug #1005 where bacula doesn't display runscript
1140 Release Version 2.2.7
1142 kes Add new free_tls() entry point so that Win32 builds.
1143 kes Fix compile warning in src/lib/util.c
1144 kes Fix entry point for edit_job_codes() so that Win32 builds.
1145 kes Fix seg fault Frank Sweetser reports in regression testing
1146 on his systems. The problem was that the original author of
1147 bsnprintf.c did not take into account the side effects of
1148 using ++x in the argument to a #define.
1149 kes Make SD protocol backward compatible with version 2.2.x.
1151 ebl Fixes bug #1015 where bacula failed to restore acl to a socket
1152 because Bacula no longer restores sockets.
1153 ebl Always use ignorecase fileset option on win32 FD.
1155 kes Apply patch from Michael Stapelberg <michael@stapelberg.de>
1156 that implements double quoting include names in conf files,
1157 and also allows piping input by having the first character
1158 be a vertical bar (|).
1159 kes Apply patch from Bastian Friedrich <bastian.friedrich@collax.com>
1160 that implement %f in RunScripts to pass the FileSet name.
1161 kes Skip leading | when lex input comes from a pipe as suggested
1162 by Michael Stapelberg <michael@stapelberg.de>.
1164 kes Apply patch for bsmtp Win32 daylight savings time fix supplied by
1165 Nerijus Baliunas <nerijus@users.sourceforge.net>
1167 kes Implement Plugin Directory and plugin events.
1169 kes Implement a security enhancement: TLS authentication but no
1170 encryption. Enabled by setting 'TLS Authentication = yes'.
1171 Note when this is on, TLS encryption is turned OFF!
1173 kes This patch corrects a problem where the maximum concurrent storage
1174 jobs counter gets out of sync during restore jobs causing jobs to
1175 'wait on max Storage jobs'. This patch fixes bug #1009.
1177 kes This patch fixes bcopy so that it produces correct Volumes.
1179 kes This patch eliminates spurious output to the console during a VerifyVolume
1180 job that contains encrypted data. It fixes bug #1024.
1182 kes This patch prevents the 'status dir' command from trying to use a scratch
1183 volume and possibly moving it from one pool to another. This patch fixes
1186 kes Add new include to postgresql.c suggested by Marc Cousins so
1187 that it compiles correctly with pgre version 8.3.
1189 kes Fix --archivedir addition to configure. Replace it with
1190 --with-archivedir in configure.in This fixes the regression
1192 kes This patch fixes bug #1012 where the job is canceled because
1193 of Max Run Time exceeded when the job has not yet started.
1195 ebl Apply Richard Mortimer patch that fixes #1016 when there are more than
1196 one 'part' to write. Instead of each part being stored on disk,
1197 written to DVD, then deleted from disk, all parts are written to disk,
1198 and only the last is written and deleted from disk.
1199 kes This patch fixes the status command to include the formating string for
1200 JS_AttrInsterting. It fixes bug #1021.
1201 kes This patch should fix the Mac OS X build problem on the latest
1202 Darwin, where sys/types.h was not included correctly (apparently
1203 due to a change in the Mac headers). The solution was to explicitly
1204 ensure that it is defined for the ./configure.
1205 This patch also has a rebuild of configure that includes the Debian
1206 qt4 patch to check for qmake-qt4. This patch fixes bug #1020.
1207 kes This patch should ensure that queued messages to the console are
1208 displayed as soon as possible. It should fix bug 1007, but has been
1209 reported not to work.
1211 kes This patch fixes the infinite loop when trying to increase the
1212 maximum number of volumes in a Pool during the add command.
1213 This patch fixes bug #1008.
1215 Release Version 2.2.6
1217 db Remove extra data on estimate command in joblist for bat.
1219 kes Cleanup of code in SD that sets the LastWritten date. This doesn't
1220 really change anything, but is the beginning of doing it *right*.
1221 To do it completely right the LastWritten date must be passed to
1222 the SD, but it is not yet done.
1223 kes Minor tweaks to some bat restore SQL.
1224 kes This patch fixes bug #1003 where putting the message output from
1225 a Verify job into the catalog results in a recursive loop. The problem
1226 seems to show up only with postgresql (to be verified).
1227 kes Correct %x to %p in postgresql debug statement.
1229 kes Fix bug #942 where lots of emails where generated when the heartbeat
1230 interval was low and Bacula wanted a different tape from the one in
1233 ebl Add new SD despooling attributes and Dir inserting attributes
1234 job status codes in the catalog (Status table).
1236 ebl Use qmake-qt4 instead of qmake when available (debian system).
1238 kes Add a security warning to src/cats/make_catalog_backup.in indicating
1239 that passing the password via the command line (arg 3) is insecure.
1240 This responds to bug #990 (it doesn't fix it).
1242 kes Set default debug_level to zero. This corrects bugs #991 and #993.
1243 kes Fix a crash in bat when it cannot connect to the Director for example
1244 if the Director is not running.
1245 kes Remove redundant INDEX (JobId) from File table in the trunk.
1246 This fixes bug #992.
1247 kes Make explicit exception to GPL in LICENSE to permit linking
1248 the Win32 FD with Microsoft VSS code.
1249 kes Apply the Solaris package patch from
1250 Masopust, Christian <christian.masopust@siemens.com>
1251 kes Apply the patch to optionally add a timestamp in the debug output
1252 submitted by Mariusz Czulada <manieq@wp.eu>.
1254 ebl Use PQerrorMessage instead of PQresultErrorMessage in postgresql
1255 backend (sql_strerror). Fixes bug #989
1257 kes Apply Michael Short's <mdshort@gmail.com> Win32 regress patch.
1258 It applied with no problems.
1259 kes Add PATH command to SunOS part of mtx-changer.in so that sed and
1260 awk are on the path.
1261 kes Redirect stderror to stdin on mt status command in mtx-changer.in
1262 since the status is returned on stderr on Solaris.
1263 kes Activate Close button on tray-monitor window. This fixes
1265 kes Check for NULL item in parse_conf.c before calling it. In the
1266 case of Device, there is no item and this caused a seg fault when
1267 Device appears in the conf file.
1268 kes Add a #define __CONFIG_H when including config.h in bacula.h. This
1269 avoids pulling in config.h multiple times in some new code.
1271 kes Fix spurious warning message printed when creating a volume with
1272 a LabelFormat. This fixes bug #976.
1274 Release Version 2.2.5
1276 kes Add JobId in place of Job name in all the Jmsg() output.
1277 kes Correct the APP_DESC for the Win32 storage service (remove an e).
1279 kes Make maxvol-test and new more strict maxvol2-test work.
1280 kes Print JobId in all Jmsg() job output.
1282 kes Add new SD despooling attributes and Dir inserting attributes
1283 job status codes. This fixes bug 961.
1284 kes Fix Win32 drive display in bat version browser. Fixes bug #962.
1286 kes Fix doc issue. This fixes bug #963.
1287 kes Fix listing performance problems in bat. Pointed out by
1289 kes Remove old debug code.
1290 kes Fix bat code that tests for Win32. This should fix bug #968
1291 kes Query 5 list wrong Vol after migration. This fixes bug #960
1293 ebl Fix #969 where user can't change Replace option in restore menu.
1295 kes Save jcr in thread specific data (tsd) for each thread.
1296 kes Make Dmsg() print JobId as -%u.
1297 kes Make Jmsg, Emsg, and others automatically pickup the jobid
1298 for the thread if it exists.
1299 kes Remove old reservation debug jid code.
1300 kes Remove get_jcr_from_tid() from OpenSSL and tls code.
1301 ebl Add an option that permit to specify spool size in job
1302 definition. (Applying patches/testing/spoolsize_per_job.patch).
1303 You must upgrade SD and DIR at the same time.
1304 dvl Add new configuration item --archivedir
1305 dvl Adjust regression tests to use tmp not /tmp. This will allow
1306 multiple concurrent runs of the regression tests.
1308 kes Fix race condition that drops final block written to volume.
1309 This happens in rare cases with multiple simultaneous jobs
1310 when the Volume fills. This fixes bug #964. May be related
1311 to bug #935 and possibly #903.
1312 kes Eliminate more strerror() and replace with bstrerror().
1313 kes Remove BSD getopt and replace with unrestricted IBM version.
1314 kes Fix Win32 build for changed calling sequences.
1315 kes More tweaks to the mount volume routines to get everything
1316 right. Changed variable name from find to have_vol, which is
1317 much easier to understand.
1318 kes Enhance btimer debug code.
1320 kes Fix FD->SD authorization failure, which was due to spurious
1321 wakeups from a pthread_cond_timedwait(). Simply check the
1322 predicate before continuing. This fixes bug #953.
1323 kes Add const char where needed (more to do). Remove temp debug code.
1325 kes Setup SQLite busy handler before doing queries. Fixes bug #967.
1326 kes Don't overwrite error message in check_tables_version.
1328 kes Unlock batch insert tables with same calls used elsewhere.
1329 kes Allow starting 59 jobs a second.
1330 kes Make SD session key more random.
1331 kes Add retry for SQLite opening db if it fails. Probably helps
1333 kes Suppress extra error messages during batch insert failure.
1335 kes Add jcr to timer packets so if killed message can be sent to job.
1336 kes Add JobId to all Dmsg() output.
1337 kes Put some FD auth code on dbglvl rather than fixed.
1338 kes Return insert attributes error message in db msg buffer to avoid
1339 false error messages. Helps fix bug #966.
1340 kes Separate batch init error messages. Probably helps fix bug #966.
1341 kes Make SD code that contructs attribute insert check string lengths
1343 kes If Dir gets an error during inserting attributes, cancel SD.
1344 This reduces unnecessary error messages.
1346 kes Correct search boolean for getting Volume info
1347 ebl Cleanup batch insert code. Probably fixes bug #965.
1348 kes Back out one small change to the reservation system (reserving a volume).
1349 kes Rework how a Volume is mounted. It is now much more intelligent and
1350 will always attempt to use any mounted volume if possible and reduces
1351 calls to the Director asking about volumes.
1353 kes Turn off some code when batch insert not enabled.
1354 kes Edit FD name in connect error messages.
1355 kes Rework the reservation system to take into account that the Director
1356 might give us a Volume that is different from the current one being
1357 used, and to ensure that we don't exceed Maximum Volume Jobs.
1358 This fixes (mostly) bug #947 ' Maximum Volume Jobs = 1 produces
1359 fatal error with multiple jobs running'
1360 kes Add more debug code in reservation system.
1361 kes Implement maxvol-test to check bug #947.
1363 kes Add code to handle tray monitor separated from Win32 FD.
1364 kes Fix display of Win32 tray monitor after reboot. Fixes bug #952.
1366 kes Add missed return in fixing verify bug -- trunk only.
1367 ebl Fix a command parser issue causing a director segfault.
1368 kes Fix ANSI tape labeling. Fix restoring ANSI labeled Volumes.
1369 This fixes bug #954.
1370 kes Increase the max block size to 4MB fixes bug #957.
1371 kes ERABT if user sets min block size > max block size. Fixes bug #956.
1372 kes Apply 2.2.4-poll-mount fix, that resolves bug #908 where a tape
1373 is not properly mounted (recognized) during a poll.
1374 kes Apply 2.2.4-verify patch that resolves bug #958. A Verify catalog
1375 Job that has differences reports Verify OK.
1376 ebl Fixes #955 bug seg fault in Dir introduced with regexwhere relocation.
1378 ebl Add an option to operate on all pools with update vol parameters.
1379 This complete the project 20. Patch from Nigel Stepp.
1380 ebl Add history support to bconsole when using readline.
1381 Using Ctrl-D to exit doesn't update .bconsole_history
1382 kes Modify new volume algorithm to use max MediaId for generating next
1383 volume number rather than the count of Volumes. This should essentially
1384 eliminate the failure rate if some volumes were deleted. Bug #921.
1385 kes Begin implemention of Optimize Job Scheduling.
1386 kes Implement restore callback that Dirk and I agreed on for bat
1387 restore. This fixes bug #928. Restore of backup of zero files fails.
1388 kes Fix SQL Catalog logging which broke with new db_escape_string
1391 Release Version 2.2.4
1393 kes Fix bacula_cats.def for new db_escape_string().
1394 kes Increase size of name string when FD making connection to SD.
1395 May fix bug #953. FD->SD connection failure.
1397 kes Add code to help Dan debug 2drive-incremental-2disk test.
1398 kes Add code to try to fix bug #908.
1399 kes Add waits to multiple exit detection code to try to force pid
1400 file to always be deleted.
1401 kes Restore good dev.tar.gz to rescue set appropriate binary property.
1402 This fixes bug #950.
1403 kes Fix seg fault in error exit of acquire_for_read after unsuccessfully
1404 trying to switch drives by checking for blocking before unblocking.
1406 kes Cancel storage daemon in all cases where FD reports error. This
1407 should fix virtually all cases of bug #920.
1408 kes Fix db_escape_string() for MySQL which did not compile.
1410 kes Fix error message that was clobbered when Dir tells SD it does not
1411 have write permission on Volume. This should fix a minor point
1412 in bug #942, but not the main problem.
1413 kes Add code to cancel job in SD if FD connection fails. This should
1415 kes Add code in FD exit to prevent loops and a crash on FreeBSD.
1416 dvl Pass jcr and db into db_escape_string() to enable better escaping
1418 kes Fix migration code to get correct Volume name with multiple volumes
1419 by skipping |. Fixes bug #936.
1420 kes Implement patch supplied by Landon to fix bug #944 where using
1421 TLS with bconsole uses 99+% of the CPU.
1422 kes Note, you need GTK >= 2.10 to be able to link the Tray Monitor
1424 kes Move patches into patches directory.
1426 ebl Fix bug #946 about 'bacula-dir -t' which doesn't works
1429 ebl Using 'm' in bconsole will show messages like before,
1430 and not memory usage.
1431 kes Fix bug #935, and probably also bug #903 where files were not
1432 restored. MediaId was not properly set in JobMedia record after
1435 kes Suppress chown and chmod error messages if the FD is not running
1438 kes Apply Martin Simmons' patch that should turn off the new API usage
1439 when batch insert is turned off allowing building on older
1441 kes Add ./configure search in qwt-qt4 for qwt package
1443 kes Bacula is now free of 3rd party GPL copyrighted code!
1444 kes Remove idcache.c
1445 kes Add guid_to_name.c/h which replace idcache.
1446 kes Remove enh_fnmatch.c. Make code that references it use fnmatch.c
1448 ebl Detect if new PosgreSQL batch insert API is present.
1449 kes Correct incorrect mempool call causing Director crash. Occurs on
1450 systems without va_copy().
1451 sb Update spec files for 2.2.1 release
1453 kes Fix memory pool call in ua_output.c. bug #934.
1454 kes Replace fnmatch.c and fnmatch.h by modified BSD versions.
1455 Add test program to fnmatch.c
1457 kes Integrate patch to README.vc8 from
1458 Hederer Jean-Sébastien <hedererjs@asperience.fr, had to manually
1459 edit it to get it into Unix patch format.
1460 kes Implement mkpath.c to replace old FSF makepath.c
1462 kes Implement savecwd.h and savecwd.c. Remove FSF versions.
1464 Release Version 2.2.1
1466 kes Update POTFILES.in
1467 kes Cleanup a few underquoted AC_DEFUNs in configure
1468 kes Apply patch from Martin Simmons that adds a test for va_copy to
1471 kes Fix bug #921 by increasing the number of tries to create a new volume
1473 kes Rework bmsg in ua_output to use va_copy() so that bvsnprintf()
1474 can be called multiple times. Implement a version for machines
1475 without va_copy() that gets a big buffer.
1477 kes Integrate more portable zone offset code into bsmtp.c
1478 Submitted by Attila Fülöp.
1480 kes Fix bad SD->FD return status reported by
1481 (James Harper) <james.harper@bendigoit.com.au>
1482 ebl Fix a bug in read_close_session which return random status
1483 thanks to James Harper
1485 kes Fix (hopefully) bug #930 by doing a db_escape_string() on file
1486 and directory names during restore of single file/directories.
1487 kes Add sanity checks to .sql command when string is empty. Hopefully
1488 that will resolve Dirks Director crash.
1490 kes Apply patch submitted by Martin Simmons that corrects a seg fault
1491 in the bsmtp chat subroutine when debug is >= 10.
1493 kes Fix Director crash when running bat SQL queries.
1494 kes Add David's notes on Item 8: Copy pools.
1496 kes Rework projects file to be current and ready for a vote.
1497 kes Enhance lex scanner error message.
1499 kes Tweak LICENSE file to mention BSD code.
1500 kes Fix bat.pro.in so that it includes the OpenSSL libraries only
1501 if specified on the ./configure.
1502 kes Add first (not yet tested) cut of bcomm to the qt-console directory.
1503 This class is intended to allow us to open a second bsock to the
1504 Director while in the restore subdialog.
1506 kes Fix configure to create bat Makefile before creating dependencies.
1507 kes Eliminate the egg files from the tray-monitor. Use gtk calls.
1508 kes Add a tooltip to the tray monitor.
1509 dvl Set the Director's PID file before dropping privs. This fixes
1512 kes Update AUTHORs file
1513 kes Increase the default max concurrent jobs to 20 in FD and SD to
1514 correspond with the default .conf files.
1515 kes Rewrite the Win32 service routines. This eliminates the 3 copies
1516 some different, of the same file created by RN when porting the
1518 kes Rearrange some of the Win32 directories and the placement of the files
1520 kes Set DEVELOPER flag in version.h
1522 ========================================================================
1523 Release Version 2.2.0
1525 kes Apply a second doc patch from Marc.
1526 kes Apply a doc patch from Marc Schiffbauer <marc@schiffbauer.net> that
1527 improves the tips section that discusses how to setup multiple
1530 kes Update bat README file.
1531 kes Apply patch from Allan Black <Allan.Black@btconnect.com> that
1532 corrects a typo in the Recycle status check in db_find_next_volume().
1533 This will probably fix a number of annoying problems with multiple
1535 kes Modify most of dird/msgchan.c to use bsock class calls rather than
1536 bnet calls -- no functionality change.
1538 kes Modify the Verify output to specify if files are missing on
1539 the Volume(s) or disk. Fixes confusion in bug #916.
1540 kes When more than one Volume is read in a migration job, the last
1541 Volume bytes reported are from the last read volume rather than
1542 the last written volume. Fixed. This fixes bug #910.
1543 kes Fix display of Recycle flag after update volume=foo recycle=yes.
1544 It previously printed New Recyle flag is: no. This fixes bug
1547 kes Correct seg fault when switching tape drives during restore.
1548 kes Commit uid_gid_name.c (replacement for idcache.c), but will not
1549 be used until after 2.2.0 release.
1551 kes Remove fnmatch() in SD that permitted wild card specifications.
1552 This fixes bug #914.
1554 kes Fix %g in filename returned by SQL for browse tree reported by
1556 kes Fix configure so that it puts config.out in the cwd rather than
1558 kes Attempt to fix the locking problem reported by Eric in bug #906.
1559 kes Make berrno class to leave errno unchanged after constructor call.
1560 kes Make bnet_server use the heap rather than the stack to allocate
1561 its socket fd pointers to avoid a crash at termination. Problem
1562 reported by Ryan Novosielski and bugs pointed out by Martin Simmons.
1564 kes Create new depkgs and depkgs-qt separating the qwt out of depkgs
1565 and putting it in depkgs-qt along with Qt4.3.
1567 kes Rework code in acquire.c that switches drives for reading when
1568 the Media Type does not match. This should fix bug #906
1570 ebl Fix a director segfault during job setup #907
1571 kes Correct seg fault in postgresql when first operation returns no
1572 rows. Fixes Dirks File browser problem seg fault with bat.
1574 kes Apply patch from Felix Schwarz <Felix.Schwarz@web.de> that allows
1575 building wxconsole on Fedora 7 with wxWidgets 2.8 (it works with
1578 kes Implement PopUp YES/NO dialog for bat.
1580 ebl Fix a compilation bug when using #define BACL_WANT_NUMERIC_IDS
1582 kes Correct RunScript to terminate job in FD on failure.
1583 kes Change abort_on_error and AbortJobOnError to fail_on_error
1584 and FailJobOnError in RunScripts.
1585 kes Minor tweaks of code formating in RunScripts, principally to
1586 avoid depassing 80 columns.
1588 kes Eliminate one #ifdef Win32 in bsmtp
1589 kes Implement grow tool to grow a file for testing very large databases.
1590 kes Add big-vol-test to test Bacula seeking with > 5GB.
1593 kes Modify find_next_volume() to return all values in Media record.
1594 kes Ensure that we keep Recycle Pool when moving Scratch volumes.
1598 kes Update Release notes
1600 ebl fix a bug in get_scratch_volume() report by Andreas Helmcke
1601 Warning, in previous beta version, all media get from scratch keep their
1604 kes Tweaked Win32 installer to remove temp conf files at uninstall time.
1605 This should fix bug #842. Made a note to look at removing the temp
1606 files at the end of the install.
1607 kes Add ability to mount and unmount a file device providing it is
1608 marked as being removable and has the appropriate mount and unmount
1609 commands defined in the Device resource. This fixes bug #830.
1610 kes When applying a storage override, release all previous storage
1611 definitions rather than just prepending the new storage.
1612 This should prevent a good deal of confusion.
1614 kes Implement ./configure search for qwt libraries.
1616 kes Disable posting the WM_CLOSE message in KillRunningCopy of the
1617 Win32 FD. This should fix bug #893.
1618 kes Remove an unnecessary beep in Win32 init code.
1619 kes Update copyright dates in Win32 executable about boxes.
1620 kes Replace the FSF copyrighted getopt.c and getopt.h in the Win32
1621 code with a BSD getopt.c and getopt.h.
1622 kes Remove sched.h from the Win32 compat directory -- not used.
1623 kes Remove the Exit menu item from the Win32 tray monitor. If you really
1624 need to shut it down, do it through the services panel or the command
1626 kes Remove some inappropriate Bacula FSFE copyrights.
1627 ebl Tweak status client=xxx to be more easy to parse (more like in 2.0.x)
1628 kes Fix regress config non-portable test as pointed out by
1629 Florian Heigl <florian.heigl@gmail.com>
1630 kes Fix PSCMD for HP-UX in configure.in to have proper syntax.
1631 as pointed out by Florian Heigl <florian.heigl@gmail.com>
1633 kes Fix missing rctx. prefixes on the Darwin code in src/filed/restore.c
1634 Reported by Frank Sweetser.
1638 kes Fix client-only build.
1639 kes Integrate client-only fixes for bsys (initgroups) and conio from
1640 Sergey Svishchev <svs@ropnet.ru> for the AIX platform.
1641 kes Make arguments to get_scratch_volume() in same order as other
1643 kes Rework the prune_volumes() subroutine so that after purging and
1644 no volume found in desired pool, it will check for a scratch
1645 volume. This prevents recycling the whole scratch pool.
1646 kes Add code to status storage to print boffset_t (largefile support).
1648 kes Move qwt (Graphics libarary for Qt4) to depkgs.
1649 kes You now need a --with-qwt=<dir> to be able to build bat.
1650 kes Update src/win32/cats/bacula_cats.def to include the new
1651 db_get_query_dbids() call on Win32.
1653 kes Correct a problem when selecting a scratch volume and moving
1654 it to another pool that lost some columns.
1655 kes Tweak some code in ua_update.c to use POOL_MEM instead of POOLMEM.
1656 kes Enhance Autochanger error messages to include Volume and device name.
1657 kes Rework prune_volumes() code to take account of InChanger flag,
1658 and to handle recycling volumes going to the Scratch pool and
1659 current pool because the RecyclePool directive.
1660 kes Implement a better and more efficient db_get_query_dbids() to
1661 handle creating and passing back a list of DBIds.
1665 kes Start work on new more efficient DBId subroutine. First use
1666 will be for recycling volume to Scratch inchanger.
1667 kes Increase number of JobIds in pruning from 1000 to 10000.
1668 This to be replaced by above routine.
1669 kes Begin implementation of building Qt4 on Win32.
1670 kes Correct typo in fix I added for bad TLS shutdown.
1671 kes Pull 2.0.3 patches into patches directory.
1672 kes Update Release notes. Include qt-console in line count.
1673 kes Update Projects file.
1675 kes Integrate patch from Sergey Svishchev <svs@ropnet.ru> that fixes
1676 bug in migration code where a job that spanned two volumes
1679 kes Implement new BST_DESPOOLING blocked state. Change from locking
1680 during despooling in SD to blocking. This means that other threads
1681 can work with the device structure, in particular the reservations
1682 system while despooling.
1684 kes Fix return in reservation message queue that missed clearing
1685 the jcr lock (implemented 26Jun07 below).
1686 kes Rename a number of dev methods to make locking function names
1688 kes Document locking in lock.c. Move lock structures to new file
1691 kes Move reservations message lock to lock jcr only this
1693 kes Move main SD locking code into lock.c (new file).
1694 kes Update Win32 build to include lock.c
1698 kes Dirk committed the qwt library code for drawing graphs in bat.
1699 kes Tweak install of qwt so that it is integrated with ./configure.
1701 kes Fix HAVE_BATCH_INSERT to be HAVE_BATCH_FILE_INSERT, pointed
1702 out by Eric (my typo).
1703 ebl Fix configure.in to get batch mode enable
1704 kes Return correct string from authenticate.cpp in bat when connecting
1706 kes Apply patch suggested by Frank Sweetser to fix bug #888 --
1707 spurious line drops when using TLS.
1708 kes Do not file reparse points when restoring a file that already
1711 kes Implement Windows reparse points -- similar to directories, but
1712 we do not descend into it. This is a first cut. They seem to
1713 be backed up, but restore is not yet tested.
1714 kes Remove restore_blocking in tls code when shutting a socket to leave
1715 it in blocking mode. Hopefully this will fix the encryption bug
1716 reported by Frank Sweetser.
1717 kes When opening a file for backup, tell the OS that we are going to
1718 read it sequentially -- optimization.
1719 kes Change variable names in authenticate_director() to not conflict
1720 with member names in bat. Caused great confusion with compiler,
1723 kes Queue openssl error messages in case of comm problem.
1724 kes Do shutdown() call if socket terminated.
1725 kes Remove some duplicated code in tls.c
1726 kes Move more of the bsock member variables into private and access
1728 kes Add Frank Sweetser's tls-test to the regression suite.
1730 kes Add Swedish sv.po file
1732 kes Don't print clock skew message in FD if less than 3 seconds diff.
1733 kes Add a bit of VSS info to status client.
1734 kes Implement a first cut of Vista VSS, using Win2003 code.
1736 Release: 2.1.20 beta
1738 kes Fixed bug #886 (multidrive autochanger: SD doesn't use drive with
1739 loaded tape but uses first drive).
1740 kes Fixed bug #807 Restore encrypted backup failed on Windows 2003
1741 This was indeed a Win32 issue.
1743 kes Simplify search of autochanger for in-use Volume.
1744 kes Fix exit condition of check for in-use volume. kes Remove
1745 inappropriate my_postgresql_free_result() in db_close()
1747 kes Fix bad return in FD when encryption signature not found.
1748 Probably caused a crash.
1749 kes Inhibit missing encryption signature error messages for
1750 file types where no signature computed.
1751 kes Correct inverted check on autochanger in reservation system.
1752 kes Tweak debug code in autochanger reservation.
1754 kes Add some additional locking in the cats directory in subroutines
1755 that modify packet variables called from batch insert.
1756 kes Rework how dcrs are allocated. new_dcr() can now be called
1757 with an existing pointer, and it will simply clean it up.
1758 This allows the reservation system to test various different
1759 devices, and will permit easy device changes.
1760 kes A bunch of changes all over to handle new new_dcr() calling
1762 kes Work more on the Volume management in the SD. Remember Volumes
1763 for tape drives and for autochangers (even virtual disk changers).
1764 kes When looking at the Volume list to reserve a drive, handle
1765 autochanger names correctly by interating through the changer
1766 devices. Also call the Director to see if a Volume is suitable
1767 for the current job.
1768 kes Fix some bugs in bscan. Make sure all media records are written.
1769 Make sure that valid JobMedia records are written for disk files.
1770 Previously they were completely wrong.
1771 kes Move source tar files for depkgs-mingw32 to www.bacula.org so
1772 that the URLs don't change and so that the developers will all
1773 work off the same copy. Rebuild from scrach.
1774 kes Upgrade Win32 SQLite3 from 3.3.8 to 3.3.17.
1776 Release: 2.1.18 beta
1778 kes Fix seg fault in FD from incorrect digest size.
1779 kes Fix argument to non-OpenSSL crypto.c subroutine.
1781 Release: 2.1.16 beta
1783 kes Remove a few malloc()s from the encryption code.
1784 kes Use the class calls to bsock in filed/backup.c and restore.c in
1785 place of the old bnet_xxx code.
1786 kes Implement code that does an on the fly calculation of the
1787 signing digest during restore of encrypted files. It makes
1788 a best guess at the algorithm, and if it is not correct, will
1789 then revert to the old code which reads the file after it is
1791 kes Implement at least one missing crypto stream in stream_to_ascii()
1792 kes Apply patch from William <chowmeined@gmail.com> that fixes bug
1793 #877 where a reload with bad syntax causes Dir to exit.
1795 Cut: 2.1.14 beta (not released)
1797 kes Do not free a volume on a tape drive until another volume is
1798 mounted and read, or the autochanger unloads the volume.
1799 This should help the SD re-use volumes that are already mounted,
1800 and should fix bug #886.
1801 kes Apply patch from user brettedgar that allows gnome2-console include
1802 the OpenSSL libraries, and hence work with SSL. Fixes bug #885.
1803 kes Apply patch from Lucien Weller that fixes day of week calculation
1804 because of DST flag problem. Fixes bug #887.
1806 kes Move find_next_appendable_volume() to after acquiring a valid device
1807 in reserve.c. This fixes bug #864 -- confirmed by reporter.
1809 kes Unable to reproduce bug 872. However added additional testing for
1811 kes Bug #874 resolved by documenting SQLite limitations.
1812 kes Bug #882 resolved by documenting mtx-changer script for new drive code.
1813 kes Bug #881 resolved by removing typo in mtx-changer script.
1814 kes Made Frank Sweetser's wiki the official Bacula wiki with his
1815 approval. Added a link to the wiki on the web page, and implemented
1816 a backup from http://paramount.ind.wpi.edu
1818 kes Fix update allfrompool to pass pool name.
1820 kes Convert to pure GPL v2 license.
1821 kes Fix sscanf problems reported by Peter Buschman that caused
1822 a bus error on Solaris.
1823 kes Rework (simplify) the select prompt in bat.
1824 kes Move get_jobid_from_tid() into lib and create a
1826 kes Use get_jcr_from_tid() to conver all tls Emsg() to Jmsg(). This
1827 should definitely fix the problem of lost error messages in the
1829 kes Remove over zellous addition of FSFE copyright in a few eggxxx files.
1830 kes Eliminate tcpd.h from the project. Enclose the #include from the
1831 library with extern C ...
1832 kes Add print of signal name when a signal is trapped.
1834 Release: 2.1.12 beta
1836 kes Fix a seg fault in the PostgreSQL driver dereferencing a NULL pointer.
1838 kes Implement SQLITE3_INIT_QUERY in version.h that can do an initial
1839 query for SQLite3. Use it to set PRAGMA synchronous = OFF. This
1840 makes SQLit3 run 30 times faster, though a bit less safe.
1841 kes Implement --with-batch-insert in configure and detection of thread
1842 safe libraries. It is on by default, but turned off if no thread
1843 safe library (e.g. SQLite 2) is available.
1845 kes Fix Bacula PostgreSQL buffer overruns.
1846 kes Do better checking for NULL results returned from PostgreSQL;
1847 implement retry for failed queries; clear results buffer after
1848 failed query. Hopefully this will correct the PostgreSQL failures.
1850 kes Implement algorithm to handle only one appendable volume with
1851 Prefer Mounted Volumes = no.
1852 kes Fix a Bacula PostgreSQL bug dereferencing a NULL pointer
1853 returned from a query.
1854 kes Make volume lock recursive.
1855 kes Implement an additional volume reservation algorithm that
1856 starts by considering all reserved volumes then uses the
1857 old brute force algorithm of searching the resources to
1858 find a suitable device.
1859 kes Add new reservations debug code and refine the old code.
1860 kes Update the win32/dll/bacula.defs file.
1862 kes Tweak reservations algorithm to permit a few more cases, i.e.
1863 volume reserved, but on different drive, ...
1864 kes Enhance SD status to include Pool and Media Type for drive in a
1865 more readable format (a bit longer).
1866 kes Fix PostgreSQL double free.
1868 kes Minor refactoring of restore decryption code.
1869 kes Add code to smartall.c to detect double free of a buffer.
1871 kes Add < > around %r in from field on mail command of bacula-dir.conf.in
1872 so that bsmtp will create a correct email address (mailbox only).
1873 kes Modify 'memory' command so that the buffers are listed as 'In use'
1874 to avoid confusion with Orphaned buffers.
1875 kes I reworked the OpenSSL include/lib flags to be handled in
1876 the standard Bacula way, which should fix bug #863 concerning
1877 non-standard OpenSSL libraries.
1879 kes Implement Help Browser window for bat.
1880 kes Fix reload bug that reset StorageId to zero.
1882 kes Fix TLS #ifdefing when TLS turned off.
1883 kes Ensure that when labelling a tape with Slot=0 that InChanger
1885 kes Use DISTINCT to make MySQL and PostgreSQL uar_list_temp query
1887 kes Add StartTime to final uar_sel_jobid_temp query so that we can
1888 add DISTINCT (required by PostgreSQL).
1889 kes Implement BSOCK authenticate_director() method. Eventually will
1890 authenicate all daemons.
1891 kes Move several more functions into the BSOCK class.
1893 kes Add code to tell the OS that we no longer need a cached
1894 file that we were reading. In findlib/bfile.c. Also,
1895 only cache files that we are reading. Thanks to
1896 Tobias Oetiker <tobi@oetiker.ch> for the idea.
1897 kes Tweak to bsmtp to eliminate compiler warnings on Win32.
1898 kes Implement script to automatically generate cats and dll .def
1899 files for Win32 dll.
1900 kes Update README.mingw32 to include new .def file generation.
1901 kes Correct typo in UTF-8 error message as reported by:
1902 jhernandez <julianhernandez@gmail.com>
1903 kes Add additional sm_check() code on debug level 1.
1904 kes Set default debug level to 1.
1905 kes Trap SIGABRT in attempt to get traceback.
1907 kes Reduce bat connect timeout from 30 to 15 seconds.
1908 kes More restructuring and implementing BSOCK class in place of
1910 kes Remove a few unnecessary malloc() tests in crypto code.
1911 kes Turn off crypto calls for > 128 bits in crypto.c if HAVE_SHA2
1912 not defined. Bug reported by Allan Black <Allan.Black@btconnect.com>
1913 kes Remove duplicate HAVE_CRYPTO definition in config.h.in
1915 kes Fix Verify InitCatalog mysql_escape_string() trashing memory.
1917 kes Fix Verify InitCatalog. The attributes were not pointing to the
1918 correct saved location.
1919 kes Implement message callback so that GUI is sure to get all
1920 daemon messages. Currently displayed in a dialog in bat.
1921 kes Ignore SIGUSR2 (Bacula timer) in bat.
1922 kes Apply regress patch from bug #859 to allow regress to work
1923 with Solaris compiler.
1925 kes Begin adding TLS support to bat.
1926 kes Apply UTF-8/16 patch from Yves Orton <demerphq@gmail.com> to
1927 clean up lex.c and make it more readable.
1929 kes Move more bnet functions into the BSOCK class.
1930 kes Fix tray-monitor by not requiring a timer interval in bnet_connect()
1931 kes Complete change of berrno strerror() method to bstrerror()
1933 Release: 2.1.10 beta
1935 kes Cleanup incorrect email addresses in bsmtp.
1936 kes Make bat display initial messages rather than discard them.
1938 kes First cut of adding .mod to the run command.
1939 kes Implement auto display of messages in bat.
1940 kes Enhanced preferences to allow all Bacula output to be
1943 kes Try to make bsmtp date routines more generic.
1944 kes Fixed bug #856 autochanger documentation.
1945 kes Rework bsmtp date editing for Win32. This fixes bug #854.
1946 kes Add new cats entry point so Win32 builds.
1948 kes Attempt to fix bsmtp date editing on OSes without %z editing.
1950 kes Do better checking for the MySQL 64 bit libraries looking for both
1951 .a and .so libraries.
1952 kes Add a kludge for Ubuntu's non-standard locations for MySQL -- allow
1953 /usr/include/mysql/mysql.h AND /usr/lib/... rather than /usr/lib/mysql/...
1954 kes Require the thread safe version of MySQL during configure. Thanks
1955 to Andre Noll for pointing this out.
1956 kes Ensure that calls to find_jobids_from_mediaid_list() check count before
1957 continuing in migration code.
1958 kes Apply implementation of tray-monitor font derived from gnome-console
1959 submitted by Andreas Piesk <a.piesk@gmx.net>
1961 kes Eliminate important memory loss in SQLite
1962 kes Fixed the batch insert MySQL thread specific data that was not
1963 being freed. See cats/mysql.c:db_thread_cleanup().
1964 kes Fix restore before command.
1965 kes Convert old hdr.name to name() in a few places.
1966 kes Implement update jobid command.
1967 kes Return all time_t dates in db_get_job_record()
1968 kes Stop watchdog in SD earlier.
1969 kes Put Pool just after Storage in please mount message.
1970 kes Fix pointer usage bugs in Verify InitCatalog pointed out by
1973 kes Update the po files.
1974 kes Fix Verify InitCatalog by making it cache attributes.
1976 kes Change name bacula-bat to bat for man 1 page to correspond to
1978 kes Check for client and store NULL pointers in status command. This
1980 kes Fix non-ssl build so that it works (add JCR *jcr to crypto structures).
1981 kes Fix sign extended editing of %p.
1982 kes Clean out a little old #ifdefing in cats/mysql.c
1984 kes If time diff between DIR and FD is more than 600 seconds convert
1985 INFO message to WARNING.
1986 kes Implement heap size display in status for all daemons.
1987 kes Attempt to fix MySQL db open memory loss (not successfull).
1988 kes Don't set SIGKILL and SIGSTOP neither can be trapped.
1989 kes Eliminate memory loss in MySQL (possibly other SQLs) during
1990 Query. This looks like a MySQL but but by doing extra releases,
1991 the memory goes away. This should fix bug #847.
1993 kes When backup fails, cancel SD before waiting for sd termination.
1994 kes If SD is waiting for FD to connect during cancel, wake up the
1996 kes Fix fsf code so that errno is correctly reported.
1997 kes Apply migration patch (with changes) from Sergey Svishchev <svs@ropnet.ru>
1999 kes Make lack of Pool directive in Job an ERROR_TERM rather than FATAL
2000 so that Bacula doesn't later stumble into a seg fault.
2001 kes Use the term Restore Client in the restore Job report.
2002 kes Merge patch from Sergey Svishchev <svs@ropnet.ru> that preserves
2003 the original job's FileSetId.
2004 kes Merge patch from Sergey Svishchev <svs@ropnet.ru> that implements
2005 spooling in migration jobs. Not yet tested.
2006 kes Merge patch from Jorj Bauer <jorj@seas.upenn.edu> that implements
2007 reading conf file from a pipe. However, do it with open_bpipe()
2008 rather than popen. Not yet tested.
2010 kes Fix an ugly bug where the VolCatBytes were getting updated
2012 kes Implement bconsole memory command that prints current memory
2013 usage, plus smartalloc dump.
2014 kes Clarify some error messages in backup, admin, and migrate.
2015 kes Shrink label dialog to smaller size.
2016 kes Invert Cancel OK buttons on restore to be OK Cancel.
2017 kes More strerror() to bstrerror() conversions.
2019 kes Start implementing bstrerror() in place of strerror().
2020 kes Stripping path -- seems to work.
2022 kes Prevent door and port files from being restored (mostly
2024 kes Free an unreleased buffer in compat code.
2025 kes Change console Job name from *Console* to -Console- to eliminate
2026 Win32 filename problems. Put Win32 path separator when creating
2027 Console file. This fixes bug #846.
2028 kes Change berrno::strerror() to berrno::bstrerror(). Not yet full
2030 kes Pass jcr to crypt_sign_decode because it creates a new SIGNATURE
2032 kes Define b_errno_win32 on Linux to be zero so that it can be or'ed in
2033 to force Win32 error message.
2035 kes First cut strip path. The data should be passed to the FD,
2036 but nothing is done with it yet.
2037 kes Enhance the digest and signature routines in the crypto
2038 library to accept a JCR and to use it to print error messages
2039 so that they will go in the Job report rather than the daemon's
2041 kes Simplify some of the verify signature code.
2042 kes Simplify a few of the alternative returns in the signature
2045 ebl Use only POSIX regex instead of GNU regex in breg.c for
2046 File relocation. It fix broken freebsd compilation.
2047 kes Convert all other Dir files to use new ua class message
2049 kes Tentative fix for missing digest signature in bug 807.
2050 kes Correct handle problem in new win32_ftruncate routine.
2051 kes Convert ua_purge.c and ua_update.c to use new ua class
2052 message routines for bat.
2054 kes Correct incorrect installation of LICENSE in Win32 installer.
2055 kes Display LICENSE at the beginning of the Win32 install.
2056 kes Attempt to correct the need for the png files to be installed
2058 kes Reapply my bat.conf install script in qt-console. I think I
2059 editted bat.pro instead of bat.pro.in and it was lost.
2060 kes Apply CentOS patches someone sent me. Checks for /var/run/subsys,
2061 the /var/lock/subsys for subsysdir. Also corrects typos in the
2064 kes First cut update job.
2065 kes Correct configure to include qmake of src/qt-console directory.
2067 kes Make restore job yes/mod/no print in one command so GUI works.
2068 kes First cut implementing backup and restore client.
2069 kes Correct editing in Verify output that caused a seg fault.
2071 kes Insure that bat.conf is not overwritten during installation.
2072 kes Fix important bug in db_sql_query() in mysql.c. It was introduced
2073 while I was implementing migration in March 2006 !
2075 ebl Cleanup file relocation, using char *RegexWhere instead of
2076 char *where + bool where_use_regexp
2077 kes Update some manpages and add bat manpage.
2078 kes Make a first cut at converting bacula.spec.in for bwx-console
2080 kes Apply patch from John Goerzen to add hostname as fourth argument
2081 to make_catalog_backup script.
2082 kes Fix typos I introduced into bsmtp.c
2083 kes Make pm_strxxx() routines handle input of NULL pointer. This
2084 is to protect from NULL pointers returned from SQL databases.
2085 kes Correct typo in bacula-sd manpage as pointed out by John Goerzen.
2086 kes Add more debug to FIFO code -- fix fifo regression test.
2088 kes Implement posix_fadvise in FD, and for reading spool files in SD.
2089 kes Add thread timer to bnet_connect() to break from OS if wait time
2092 kes Update Win32 build to include new files, new symbols, and
2094 kes Implement socket level heartbeat (tcp_keepidle)
2095 ebl Commit File relocation patch
2096 kes Make bat have 'make install' target.
2097 kes Warn during install if old gnome-console binary found.
2098 kes Warn during install if old wx-console binary found.
2099 kes Add -8 option to bsmtp command line to add content type utf-8.
2100 Fixes bug #809. (Character coding problem in bsmtp).
2101 kes If < is found in target (from, to, cc) then do not enclose the
2102 target in < > in bsmtp. Fixes bug #772 (malformed address).
2103 kes When printing certain items in dbcheck, stop after 300000.
2104 Fixes bug #822. (dbcheck loops).
2105 kes Incorrect status in Dir after waiting for mount with poll set.
2108 kes Extend idea of Prefer Mounted Volumes to mean a volume about
2110 kes Print waiting to reserve a device every 5 mins.
2112 kes Don't call close_part in label.c if tape and relabel.
2113 kes Don't free volume if busy in close() -- should help with
2115 ebl Fix #824 RunScript bug (After script could be execute twice)
2116 Now, Before Script can use RunsOnSuccess and RunsOnFailure options
2117 By default (like before) RunsOnSuccess=true and RunsOnFailure=false
2118 Add a regression script to test RunScript
2120 kes Correct usage of MTIOCLRERR ioctl for clearing persistant errors
2123 kes The bgnome-console (gnome-console) and bwx-console (wx-console) are
2124 deprecated. No additional bugs will be fixed, and they will be dropped
2125 in a future release (probably 2.4.0).
2126 kes Change name of wx-console to bwx-console to make it more Bacula
2128 kes Change the name of gnome-console to bgnome-console to make it
2131 kes Some time in March, a Feature Request with patch from Jorj Bauer
2132 <jorj@seas.upenn.edu> was committed by Landon (with my approval).
2134 The ability for the director to validate a Client (FD) CN against
2135 an arbitrary set of patterns rather than the hostname, with
2136 A new 'TLS Allowed CN' set of directives which are implemented
2137 in the Client resource. Then pattern matching is used in place
2138 of hostname matching against the Certificate's CN. As an example, we
2139 have certificates which (a) use a local CA, and (b) have a CN of the
2141 kes Add new/changed entry points to Win32 build
2142 kes Create unaccepted-projects for projects that are not accepted.
2143 kes Simplify locking in the reservations system.
2144 kes Add more debug code in reservations.
2145 kes Make sure error condition on reserving a volume is handled correctly.
2146 kes Correct handling of volume_in_use.
2147 kes Correct handling of initializing a device.
2148 kes Move handling of broadcasting releasing a device into release_device().
2149 kes Correct attaching dcr to dev so that it is only done if device
2150 is properly initiated.
2152 kes Locking debug level tweaks in SD.
2153 kes Tweak new Volume code.
2155 kes Add exec external-command [wait-seconds] to bconsole. This
2156 executes the external-command. Note! normally external-command
2157 should be enclosed in double quotes.
2158 kes Turn the .die command on only if DEVELOPER is defined -- i.e.
2159 it should normally be off in a production system.
2161 kes Implement die command for SD so that we can force it to dump.
2162 kes Implement SD lock debug code.
2163 kes Implement new algorithm for keeping Volume list in SD. It
2164 is now owned by the device.
2166 kes Implement new code for freeing in use volumes that should
2167 resolve if not all, some of the problems of multiple drive
2168 tape conflicts described in bug 801.
2170 kes Fix gui/bacula-web/images files in svn.
2171 kes Turn on FreeBSD/OpenBSD code to set EOT model on tape.
2173 ebl Fix a bug in batch mode (in string escape)
2174 kes Correct migration prune SQL typo that crept in in a
2175 recent 2.1.x change.
2177 kes Move bnet_despool() into class in bsock.c
2178 kes Modify job report to include director name and Build OS.
2179 kes Move drop root privilege and check_catalog() before fork.
2180 kes Add update database scripts (version 9 to 10) to updatedb directory.
2182 ebl Check size and age of each file after its backup to see if
2183 it has changed during backup, if 'checkfilechanges' is set.
2184 The FD will do an extra check (stat(2)) after
2185 each file backup. mtime, ctime and size are compared with
2186 'before backup' information. If time or size mismatch, an
2187 error message will be generated. You must upgrade FD to use it.
2189 kes Make database name and user configurable
2190 --with-db-name=xxx --with-db-user=xxx
2191 kes Add back database type to message.c for debugging.
2193 kes Implement dir_sql() which issues an SQL query.
2194 kes Modify bat medialist to use dir_sql() and do some minor C++
2195 formatting as well as eliminating a number of pointers, simplifing
2198 kes Fix some of the mtx-changer grep commands for tape label readers.
2199 kes Convert a number of bsendmsg into the appropriate send/warning/error
2200 message class calls.
2201 kes Suppress the using database message in the .sql command.
2202 kes Correct an incorrect bnet_tls_client prototype -- patch from Martin.
2204 kes Add context menu for floating a window.
2205 kes Some minor cleanup and name changes in qt-console
2206 kes Add doing mt setblk 0 in Win32 mtx-changer.
2207 kes Apply Martin's bug fix to move definition of ENODATA for
2209 ebl Add a BUSY handler to sqlite to be able to use multi_db = 1 with
2210 sqlite2 and sqlite3.
2212 kes More pruning cleanup.
2213 kes Turn on wait_for_drive by default in mtx-changer.
2214 kes Turn on Batch insert code by default as it now passes regression.
2215 kes Add ./configure --enable-bat to enable building of Bat.
2216 No install yet though.
2218 kes Implement a new .sql command for bat.
2219 kes Implement code to turn off pruning in obtaining the next volume.
2220 Pruning is turned off for the status dir command, but turned on
2221 for SD requests and for the list nextvolume command.
2223 kes Correct Qmsg() that was not updated correctly when committing a
2224 previous change (probably the recent TLS patch).
2226 kes Write new subroutine is_volume_purged() that explicitly checks
2227 if the Volume is purged, and if so marks it as such. This should
2228 resolve problems reported about needing to mount twice to recycle
2230 kes Rewrite pruning algorithm to do more work in the SQL engine, and
2231 to pass a list of JobIds to be deleted to SQL. Also, minimize the
2232 amount of duplicated code.
2233 kes Do volume pruning only for the Media Type desired (reduces pruning time
2234 if multiple Media Types are in the same pool).
2235 kes Implement more detailed info in the Job report for the Bacula version
2237 kes Switch from POOLMEM to POOL_MEM (a real class) in ua_prune.c and
2239 ebl Add bbatch tool to bench database and insert mode.
2240 Fix sql quote stuff in batch mode
2241 Fix sql stuff for mysql
2243 kes Correct problems with am/pm scheduling. Fixes bug #808.
2244 kes Implement new prunning code that prunes up to 1000 jobs at
2245 the same time. The same technique can be applied to a number
2246 of other prune/purge subroutines.
2247 kes Add an insanity check when starting a new tape job to ensure
2248 that the tape position has not been changed. If so fail the
2250 kes Fix Win32 build for dlls to add the folllowing:
2251 src/lib/bsock.c -- new file with new entry points
2252 src/lib/dlist.c -- new entry points
2253 src/cats/sql_create.c -- new entry point
2254 src/cats/sql_cmds.c -- new DATA item exported
2256 ebl batch mode cleanup bscan-test is ok now.
2257 kes Implement SD code to check length of disk volume before appending.
2259 kes Correct return status on db_batch... routines.
2260 kes Add call to db_write_batch_file_records() to migration code.
2261 ebl Fix AfterJob timing
2262 kes Move the checking of the database in initializion of the Director
2263 to after we drop privileges. This avoids the need for both root
2264 and bacula access to the DB.
2265 kes Correct a misplaced variable definition in src/filed/backup.c
2266 kes Correct how the new batch insert db_create_attributes_record()
2267 uses the arguments. Caused a seg fault in bscan.
2268 kes Implement lock() and unlock() methods in DEVICE class.
2269 Implement block() and set_block(xx) methods in DEVICE class.
2270 kes Modify bnet_connect() so that it uses time() to check for the
2271 wait time expiring (on some OSes, some system calls may not
2272 return immediately).
2273 kes Modify Verify to obtain the previous JobId when it is actually
2274 running rather than at schedule time (as it was in 1.38.x).
2275 kes Fix src/job.c to handle MaxWaitTime correctly. This should
2277 kes When checking pid in pid file, continue running if the pid is
2278 the same as ours. This occurs on IRIX after a system crash.
2281 kes Extend new GUI API.
2282 kes Make the ua structure a class, and implement send_msg(),
2283 error_msg(), warning_msg(), and info_msg().
2285 kes Apply fix from for building wx-console on the Mac from
2287 kes Implement new select mechanism for GUI programs.
2288 kes Reorganize initialization of stackedWidgets in bat.
2290 kes Add updated nagios plugin supplied by Christian Masopust.
2292 kes More bat implementation.
2293 kes File migrate bug with Pool Occupancy using mediaid instead
2294 of jobids. Fixes bug #795.
2295 kes Fix orphaned buffers in filed backup and verify due to
2296 crypto buffers not freed during errors. Fixes bug #789.
2297 kes Extend new GUI api code to tree commands.
2298 kes Ensure that tree and dot commands check console ACLs.
2299 kes Permit marking directory with trailing slash.
2300 kes Allow 20 console connections (instead of only 10).
2302 kes Add smartctl call to bacula-sd.conf as an example of getting
2305 kes Modify jobq.c to let simultaneous restore jobs run. This may
2306 cause them to fail if they cannot get a drive.
2307 kes Add Client Connect Wait to Storage daemon to permit users to
2308 modify the time the SD waits for a FD connection.
2310 kes Correct virtual changer check which was backwards. This caused
2311 volumes to be unloaded into slots already occupied.
2313 kes Apply Command ACL filter to JobId list in restore command.
2314 kes Correct typeo in var.c patch.
2316 kes Don't let Bacula prune File or Job records for the current Job.
2317 kes Fix variable substitution pad + inc bug reported (with patch)
2320 kes Correct SQLite log table index as reported by Luca Berra.
2322 ebl fix fifo stuff, bacula tries to rewind the fifo... Thanks to Andreas
2324 kes Begin implementing new comm signals for API.
2325 kes Fix a few places in lib/message.c where the open fd may
2327 kes Continue implementing lib/bsock.c (real class). Make jcr,
2328 who, host, and port private. There are new methods to access
2329 them for non-class use. This required touching a number of files.
2331 kes Add LANG=C to autoconf/randpass so it works with languages other
2332 than English. Fixes bug #788.
2334 ebl Revert ClientRunBeforeJob to old position as in 1.38.X.
2336 You will not be able to generate Include/Exclude list any more.
2337 It will be fixed soon.
2338 If you want to use this, you can apply
2339 trunk/bacula/patches/testing/clientrunbeforejob_can_generate_include_exclude_list.patch
2341 kes Restore of sockets created false error messages because Bacula
2342 no longer restores sockets, but the code was still trying to
2343 set the attributes on a non-existent file. Reported by a user.
2344 ebl finish RecyclePool feature
2345 Media will takes Pool.RecyclePool
2346 when moving from Scratch to a Pool or when user will do
2347 update volume=xxx frompool
2348 To use it, add RecyclePool = aPool to your Pool resource
2351 RecyclePool = Scratch
2355 kes Expand new BSOCK class adding signal() and new BNET signals.
2356 kes Begin enhancing the dot commands adding a new API function
2357 that returns more information and will make it easier
2358 to interface to the Director from a program.
2360 kes Make DEVICE fd private. Its new name is m_fd, and can be
2361 obtained with dev->fd() outside the class. This is the
2362 first of many DEVICE members to be made private.
2363 kes Implement Michael Renner's idea on having a virtual disk
2364 changer. I made some minor modifications (e.g. I did not
2365 implement the Virtual Changer directive, but simply set
2366 the Changer Command to an empty string.
2368 kes Implement a BSOCK send() method that writes the whole record
2369 in a single write() request rather than in two.
2370 ebl add update volume=xxx recyclepool=yyyy
2371 volume takes recyclepool from pool when using update volume=xxx from pool
2373 kes Fix encryption deblocking bug, which caused some restored files
2374 to be truncated. This fixes bug #763.
2375 kes Add FD event sequence order prepared by Eric -- for RunScripts.
2376 kes Fix 12am/pm bug as reported in bug #782 -- scheduler problem.
2378 kes Apply Eric's ClientRunScriptAfter patch to 2.0 and 2.1.
2379 ebl Use btime_t instead of uint64_t in media patch.
2381 kes Optimize the use of the database a bit in the Status dir command.
2382 Only open it when needed, ensure that if any previous database
2383 was opened, it is closed.
2385 kes Correct VolCatBytes bug from media patch.
2386 kes Apply patch from bug #612 by Rudolf Cejka to speedup pruning
2387 in the case of orphaned records.
2388 kes Modify dbcheck to handle orphaned JobMedia, Path, Filename,
2389 and File records in 300K chunks to be more efficient. This
2390 idea came from Juan Luis Frances (if I remember right).
2391 kes Apply Eric's scratch patch that moves a purged Volume to
2392 the RecyclePool. Question: how is RecyclePool set? what
2393 happens to the ScratchPool?
2394 kes Apply Eric's media patch that collects read/write media
2395 times as well as byte counts. This patch requires a
2396 simultaneous upgrade of the DIR and SD. Note, there
2397 should be some way to turn off timing. I'm not sure
2398 times are in Bacula units.
2399 kes Apply Eric's batch-insert patch.
2401 kes Update projects list.
2403 kes Implement Include/Exclude file lists in FD as dlists using
2404 the new dlistString class. This permits efficiently having
2405 large include/exclude lists and completes project Item 25.
2406 kes Fix dird/ua_cmds.c so that a cancel command checks if the
2407 console is authorized to cancel the job. This fixes bug
2409 kes Modify SD so that the VolCatJobs medium record is updated
2410 at the beginning of a Job rather than the end. This
2411 fixes bug #775 where exceeding MaxVolJobs caused jobs
2413 kes Added a mutex around getting and setting Volume information
2414 so that multiple simultaneous jobs will single thread.
2416 Switch to using Subversion
2417 kes Remove src/pygtk-console/ from configure
2419 kes Delete src/lib/btree.c from win32 build, then add rblist.c
2420 plus the entrypoints.
2421 kes Apply patch supplied that corrects debug print
2422 in canceling jobs for max run time. Supplied as
2423 part of bug #621, which was previously fixed.
2425 kes Test on job_canceled() and sd_msg_thread_done inside
2426 loop starting the message thread to avoid a race condition.
2428 kes Remove rl_catch_signal from console.c as it conflicted
2429 with the header definition. Fixes bug #765.
2430 ebl Fixes bug #766 about RunsOnClient = Yes (case sensitive)
2432 kes Clarify some stored/acquire messages to indicate if the
2433 problem is with read or append.
2435 kes Fix memory leak with storage ids in cats/sql_get.c
2436 kes Terminate watchdog earlier to avoid reference to released
2437 memory -- reported by Jason Austin.
2438 kes Move closing the database from jobq.c to the director daemon
2439 termination routine. This fixes memory leaks for shadow jobs
2440 (i.e. migration jobs).
2441 kes Free up the unique jobid chain items in migrate.c. This fixes
2442 a memory leak problem.
2443 kes Convert some ugly looking for statements to use foreach_alist
2444 in findlib/find.c. This will facilitate converting the structures
2445 to use dlist (for large include/exclude lists).
2446 kes Fix a bug in the btree.c and btree.h routines, then rename them
2447 rblist and add them to be built in src/lib. Include some new
2448 methods written by Rudolf Cejka that make the code more readable
2449 (hides some of the ugly casting).
2450 kes Add set_next() and set_prev() methods which make the code much more
2451 readable. Also add a new dlistString class that facilitates storing
2452 strings in dlists. To be used in the large include/exclude lists.
2453 kes Make some trivial modifications to lib/tree.h that use rblist
2454 rather than dlist for storing the tree links. This was suggested
2455 by Rudolf Cejka. The result of this is that the restore tree now
2456 uses red-black binary trees rather than simple linked lists. This
2457 should give rather dramatic speed improvements for directories
2458 contining large numbers of directories/files (more than 10000).
2460 kes Fix maxruntime bug #621.
2462 ebl Implement the include JobID in spool file name project.
2463 kes Reorder projects file in order determined by Jan 2007 vote.
2464 kes Implement item #12 on project list -- quick release of FD by
2466 kes Fix open of SQLite3 db where user does not have write permission
2467 so that DIR does not crash. Fixes bug #761.
2469 kes Add back missing @ in Win32 Makefile.
2470 kes Change 'Device not configured to autolabel' from INFO
2472 kes Fix jobq.c to restart failed jobs when Reschedule Times = 0
2473 which should restart an indefinite # of times.
2474 kes Fix configure --help to print --with-mysql[=DIR]. Same for
2475 other DIR specifications.
2477 rn Fix msvc build problems. Fix bacula.dll exports for msvc build.
2478 Fix path quoting in SQLite scripts.
2479 Fix problems with SHGetFolderPath.
2481 kes Create patches/2.0.1-restart.patch. Fixes bug #755.
2483 kes Fix Job restart on error bug that promotes an Inc to a Full
2484 backup. This should fix bug #755.
2485 kes Add qt-console and first cut of code.
2489 kes Fix Bacula->Documentation link on Win32 to point to index.html
2490 instead of bacula.html. Fixed bug #750.
2491 kes Return JobId in db_get_job_record() when JobId==0. This should
2493 kes Do not release source pointers when restarting a failed job.
2495 kes Add dynamic dll entry point for SHGetFolderPath to Win32 code.
2496 This *should* fix bug #747.
2497 kes Modify winbacula.nsi to substitute with g bin_dir_cmd. Should fix
2500 kes Modify USTORE constructor to set an empty store_source string,
2501 and don't copy the store_source string in a cancel. Hopefully
2502 this will fix Arno's seg fault, bug #744.
2503 kes Add back code to disable conio in configure. Fixes bug #743.
2504 kes Correct the Options scanner in the FD to correctly handle
2505 SHA1 option, which was eating the next option. Reported by
2507 kes Add code to indicate when the SD is spooling, spool wait, and
2508 despooling as requested by Alan Brown.
2510 Version 2.0.0 released: 4 January 2007