Technical notes on version 2.5.x General: Release Version 3.0.1: 28Apr09 dirk Correct bat Select dialog. Fixes bug #1276. kes Check for job_canceled() in fd_plugin code. kes Update Win32 table creation to have new DB version 11 format kes Remove illegal Options in Exclude of default Win32/64 bacula-dir.conf 27Apr09 ebl Fix bug #1274 where a migration job can be canceled like the original job by the MaxRunTime directive. mvw Added fix for bug #1275 where acl or xattr data is saved for virtual filenames generated by filed plugins. 26Apr09 ebl Remove "Reposition" message when restoring kes Fix platform scripts not to clean configured files during 'make clean' use 'make distclean' to clean everything. Fixes bug #1272. kes Update projects file 21Apr09 ebl Tweak version string to display versionid field at the end and keep fields order. 16Apr09 kes Add additional mysql connection debug code submitted by: Chandranshu 14Apr09 kes Fix bug #1246 Sometimes access denied with VSS enabled. UCS conversion cache was not properly flushed at the end of a Job. kes Fix bug #1268 Full Max Run Time cancels jobs (when Max Run Time = 0). 11Apr09 kes Modify insertion of read Volumes in SD to be done before the drive reservation. This ensures that a Volume to be read will not be reserved for writing. Significant enhancement. Release Version 3.0.0: 05Apr09 kes Fix Win32 make clean to clean correctly kes Cleanup Win installer dialog messages a bit ... 04Apr09 kes Separate object/binaries in Win32 and Win64 builds. More to be done. kes Add bconsole to Win64 installer. 03Apr09 kes Implement more automatic build of Win64 client. Note, there are still lots of warning messages, but it seems to build a correct binary. 02Apr09 kes Enhance Job messages from SD when the FD->SD protocol is incorrect and the SD hangs up. Previously this looked like a comm error. mvw Fixed problem in xattr and acl code trying to send empty acl or xattr streams. mvw Fix for bug #1261 where we send out a null stream when a file only an acl and xattr support is also turned on. mvw Added some warnings to configure when using libtool and static in one configure. 30Mar09 ebl Fix small memory leak in fileregexp bsr code 29Mar09 kes Correct bacula32.def entry point as specified by James. kes Add code to FD plugin driver to make a copy of the plugin filename to be saved to avoid save_file from zaping it. 28Mar09 kes Directly mark all files saved by plugin as being seen for Accurate. kes Add checks on the plugin version and the plugin license. Currently only implemented for FD plugins. kes Add installation of /usr/share/doc/bacula kes Modify plugin checkFile to return bRC_Seen to cause file to remain. Previously was true/false. 27Mar09 kes Implement installation of bat help files The help files are installed in the htmldoc dir and can be set by --htmldoc=xxx on the ./configure. Default is: /usr/share/doc/bacula/html kes Update projects file kes Apply patch from Pasi Karkkainen that adds Previous Job name to migrate job report. 26Mar09 kes Apply bacula-autoconf-db-m4.patch from Kjetil Torgrim Homme that doesn't *require* the static libraries for the SQL database engine. Fixes a build problem if the static libraries are not loaded. 25Mar09 ebl Update Makefiles to compile win64 using make WIN64=yes kes Disable plugin options in ua_run.c kes Added the following to provide solutions to the plugin/Accurate problem -- bug #1236 Cannot restore incremental backups with the Exchange plugin. - New Bacula read-only variable bVarAccurate -- returns accurate flag - New Bacula write-only variable bVarFileSeen -- marks a file as seen - New plugin entry point -- checkFile that is called at the end of an Accurate job and allows the plugin to mark a file as seen. 24Mar09 kes Temporarly turn off comm timers because it causes bat to seg fault. Must research making SIGUSR2 work with bat and Qt. 24Mar09 ebl Use MTIMEONLY fileset option in accurate check 23Mar09 ebl Tweak code to compile win64 version with mingw 21Mar09 Kes Attempt to correct timing problems with starting bat and obtaining lists. Maintain in_command counter to know when a list is coming. 20Mar09 kes Convert seconds.seq separator into seconds_seq so that Bacula editing of the Job name from the full Job name works. This fixes bug #1255 'variable %n changed'. kes Second half of proposed fix for bug #1227 that does not mark virtual volumes for unloading. kes Proposed fix for bug #1227 Job and labeling new tape. Beta Release 2.5.42-b2 16Mar09 kes Increase timeout for unmounting DVD as suggested by reporter of bug #1250. 15Mar09 jh Fix by James Harper to print error code when attempting to restore two databases (only one is permitted). This responds to bug #1234. kes Apply the nodump patch supplied by Frank Kardel that fixes the NODUMP flag problem. This fixes bug #1221 kes Add more output if a user attempts to clone a job but does not uniquely specify the Job name. This responds to bug #1248 which was not a bug, but improves user feedback. 14Mar09 kes Fix problems with bug #1247 and 64 bit time_t OSes by not editing (printf) time_t values. 12Mar09 kes Install bacula (start/stop script) in sbindir in addition to scripts dir. ebl Tweak configure to remove bash specific code ebl Remove TCABD reference 11Mar09 ebl Free lock manager in when btape exits 09Mar09 kes Apply patch from bug #1224, which fixes waiting on max Storage jobs during migration. Submitted by Alexandre Simon. kes On 03Mar08 (a year ago) applied patch from bug #1059 (kardel) to implement the NODUMP flag on FreeBSD. 07Mar09 kes When deleting a Volume by MediaId require the Id to be prefixed by a * to avoid confusing with an integer volume name. kes Prevent bls from printing binary data when a plugin stream encountered. This fixes bug #1238 kes Prepare to add JS_Warnings termination status. kes Attempt to resolve bwx-console Win32 crash. Not likely to work. 06Mar09 kes Move src/win32/dll to src/win32/lib, which is much more logical. kes Fix the Win32 build. kes Fix broken casting in src/compat/print.cpp. kes Eliminate jcr Errors and always use jcr JobErrors. This should ensure that SD and FD errors are correctly reported. Also add JobErrors to SD returned values. This should fix bug #1242. 28Feb09 mvw Implemented xattr support for Solaris 9 and above and extensible attributes for OpenSolaris. mvw Added some limits to the xattr code so that we don't blow up the filed on big xattrs. mvw Fixed some comments which changed due to xattrs being implemented. mvw Changed xattr support checking in configure to test first for generic solutions and when not found for specific OS functions. 25Feb09 mvw Don't try to copy empty jobs (e.g. with jobbytes == 0) which gives Unable to get Job Volume Parameters errors. Which leads to copying the same job over and over again. 21Feb09 kes Ensure that src/qt-console/.libs is cleaned properly 20Feb09 mvw Use acl_data_len instead of seperate var for length of acl stream. ebl Add database update scripts to updatedb dir 19Feb09 ebl Fix #1226 about bconsole segfault when using readline() 18Feb09 kes Apply Eric's next-beta.patch that enables 64 bit FileIds and adds new columns to the catalog. kes Ensure that libtool directory always cleaned + reduce unnecessary output during make clean. 15Feb09 ebl Check postgresql database encoding that should be SQL_ASCII and print a warning if it's something else. 08Feb09 kes Free name item in guid_to_name.c when already in list. kes Add more info to error message in ua_tree.c 05Feb09 kes Make re-read last block fatal if block numbers differ by more than one. 30Jan09 ebl Try to disable _FORTIFY_SOURCE by default 29Jan09 ebl Tweak compat.h for new mingw 28Jan09 ebl Add new ScratchPool directive to Pool. Thanks to Graham ebl Turn on db_get_file_list() single SQL because the failure was due to a full FS. And the accurate test fails with the other code. 27Jan09 ebl Fix a bug that doesn't update RecyclePool all the time during the first startup. 25Jan09 kes Turn off db_get_file_list() giant SQL because if fails on my production machine. kes Fix bat.pro.in so that bat is properly installed rather than just copied. 24Jan09 kes Modify search for .conf file so that if one is given on the command line, it will be used, otherwise it will use the SYSCONF directory. It will no longer look in the current directory unless explicitly requested on the command line. This fixes bug #1189. kes Fail a job that references a plugin if no Plugin Directory is defined. 22Jan09 kes Fix bug #1211 crash during reload with bad dird.conf file. 21Jan09 ebl Add detection of intptr_t and uintptr_t to configure process 20Jan09 ebl Change some cast to use intptr_t instead of long 18Jan09 kes Apply acl_solaris_update.patch submitted by Marco (thanks). kes Remove configure check for resolv.h -- it is apparently not needed and causes build warnings on FreeBSD. kes Ensure that the installer and newinstaller Makefiles are called during a make clean. 12Jan09 kes Apply Eric's fix for suppressing extended attributes error messages when dealing with deleted files. 11Jan09 kes Add src/win32/newinstaller -- single file installer kes Attempt to explicitly call gmake when needed, or if not found skip the calls. This should fix the FreeBSD regression/build. 10Jan09 kes Fix bat.pro.in so that bat will install. 09Jan09 kes Add more debug output to VSS init. kes Attempt to correct win32 debug in berrno. 09Jan09 kes Fix bug reported by Dan where make fails in clean of src/win32. 07Jan09 kes Fix bug #1212, SD is unable to recycle purged volumes. fstat() was broken. 06Jan09 ebl Despool attributes directly from the director if attribute spool file is present Beta Release 2.5.28-b1 05Jan09 kes Fix bat install broken by $DESTDIR change. 02Jan09 kes Fix annoying compiler warnings in console/conio.c kes Fix win32 build (depended whether or not ./configure was run). 28Dec08 kes Apply fix suggested by Bruno Friedmann to configure.in to find python2.5 26Dec08 kes Turn on Eric's match_bsr tape block checking code. kes Correct values used for tape block numbers in record.c. 23Dec08 ebl Fix a problem with PoolUncopiedJobs option which was broken by the new JT_JOB_COPY type. kes Fix bug #1206 -- Error: sql_update.c:194, which was probably caused by the user modifying the Bacula DB schema. kes Remove rogue line of C code. kes Fix bug #1208 Beta Release 2.5.28-b1 02Jan09 kes Fix annoying compiler warnings in console/conio.c kes Fix win32 build (depended whether or not ./configure was run). 28Dec08 kes Apply fix suggested by Bruno Friedmann to configure.in to find python2.5 26Dec08 kes Turn on Eric's match_bsr tape block checking code. kes Correct values used for tape block numbers in record.c. 23Dec08 ebl Fix a problem with PoolUncopiedJobs option which was broken by the new JT_JOB_COPY type. kes Fix bug #1206 -- Error: sql_update.c:194, which was probably caused by the user modifying the Bacula DB schema. kes Remove rogue line of C code. kes Fix bug #1208 Beta Release Version 2.5.26 20Dec08 kes Correct typo in Win32 Makefile editing kes Correct typos in debug output. kes Improved error detection in creating bsrs. kes Add debug code to Win32 restore 19Dec08 kes Fix Win32 build. ebl Cleanup director VolParam struct 18Dec08 ebl Replace File:Block in BSR by Address to fix #1190 16Dec08 kes Correct missing return in Darwin code. 15Dec08 ebl Copy joblog after a Copy job 14Dec08 kes Tweak block.c read to more closely simulate write for computing block addresses and turn on disk block testing. kes Implement a crude 'list joblog' mostly for debugging. 13Dec08 kes Fix Migration bug #1206 sql error with NULL FileSetId when no jobs to migrate. kes Fix Migration JobLog bug #1171. Get the JobIds correct. 12Dec08 ebl Fix segfault in bscan when using debug mode 11Dec08 kes Fix configure to do minimum Win32 configure so that make clean works. kes Tweak modify FD header to use %ld instead of %d. kes Remove hand scanning of FD header in SD and use Bacula's sscanf, which is now OS independent. kes Define new object (file/dir) begin and end Volume label records in SD. kes Use new method of defining XATTR #defines to avoid need for having them in config.h.in 10Dec08 ebl Rename all STREAM_ACL_..._T into STREAM_ACL_.. 09Dec08 ebl Add a new lock manager that can detect deadlock situation This new option is activated with a --enable-lockmgr configure option. ebl Add new Director->MaxConsoleConnections directive 03Dec08 ebl Fix bacula-sd hanging after tape gets full + unload 02Dec08 ebl Remove extra db_lock() in get_prune_list_for_volume() ebl Apply 2.4.3-prune-deadlock.patch that fixes a problem when using Catalog as message backend. 01Dec08 kes Apply Marco's Darwin xattr patches. 28Nov08 kes Fix Win32 build. 26Nov08 kes Apply Marco's Extended attribute support patch. kes Update projects file 25Nov08 kes More changes to ensure that during thread switches the jcr is removed from the TSD. kes Ensure that consoles attach jcr to thread, and that only the thread attached is removed from the TSD. 24Nov08 kes Move definition of FileId_t to bc_types and define it once in the jcr. 22Nov08 kes Remove all time_t from arguments in favor of utime_t, which is machine independent. kes Add more debug to match_bsr.c and use %u for unsigned debug editing. 20Nov08 ebl Apply patch for bug #1182 about Recycle flag that is not updated after a pool change. kes Since the user has been warned, allow console purge command to purge volumes that are in use. kes Fix Win32 build to add new sd_plugins.c ebl Apply patch from bug #1175 that reset the Slot and the Inchanger flag in db_make_inchanger_unique(). ebl Remove a Emsg() after recieving a Fatal signal that can lock the catalog. 19Nov08 kes Apply patch from bug #1187. It prints an error message if the Maximum Block Size in the SD is too big. kes Increase Maximum Block Size to 2,000,000 bytes. kes Use doubly linked bsr list so that consumed bsrs may be removed. Removing not yet implemented. 18Nov08 kes Implement a fix that very likely fixes the undesired volume purge reported by Graham Keeling. kes Implement bsr block level checking for disk files. However, it does not work correctly in accurate tests, and all the migration and copy tests, so it is turned off. ebl Make SD plugins work. 14Nov08 ebl Apply Riccardo's patch to compile bacula+mysql on mandriva 13Nov08 ebl Add more variables accessible through the director plugin interface. 12Nov08 ebl Do work on plugins - fix compilation of the director plugins - add plugin list to status dir output - add director plugin dump after a fatal signal ebl Apply Riccardo's patch that fix some win32 compilation errors and a bug with bat version browser. 11Nov08 ebl Add Plugin debug after a fatal signal. ebl Add db and rwlock debug after a fatal signal. 10Nov08 ebl Fix maxwaittime to fit documentation, this time is now counted from the job start and group all wait periods. ebl Add tips for postgresql to improve performance when having multiple batch insert at the same time. 09Nov08 ebl Remove extra debug for db lock. 07Nov08 kes Apply Riccardo's second patch that cleans up the #include file order + a few Win32 particularities to make bat work on Win32. ebl Add allow_transactions flag to mysql db backend. kes Apply win32-fixes patch from Riccardo that makes the Win32 bat more stable and faster (but still slow). 06Nov08 kes Fix bug with job name duplication if more than 60 jobs created during a minute. kes Correct some bugs of cleanup in SD if the FD connection fails. ebl Add code to get more information after a fatal signal. 05Nov08 ebl Apply Bastian's patch that add spooldata=yes|no option to run command. 04Nov08 ebl Fix bash shell to sh shell in database creation script 02Nov08 kes Fix orphaned jobs (possible deadlock) while pruning. kes Use jcr stored in bsock rather than searching in getmsg.c. This results in about a 5% speed improvement with four concurrent jobs. kes Implement win32_chmod that uses wide characters, if possible, to get and set the file attributes. 29Oct08 kes Apply pane freezing during updates patch from Riccardo Ghetta. kes Rework next_vol and autoprune a bit due to failure in recycle-test. prune_volumes() now returns no status, but should prune at least one Volume, if possible. kes Modify check_if_volume_valid_or_recyclable to reject a volume with Recycle set off. kes Modify prune_volumes() to continue if volume Recycle is off or if the volume has expired. Add more debug. 28Oct08 kes Fix bug #1046 VolumeToCatalog incorrectly reports mounted filesystems as missing on the Volume. kes Rewrite the set_jcr_job_status() code to include job status priorities so that more important status changes occur but lower priority status changes will not overwrite something more serious. This could possibly cause reporting incorrect status reporting in some cases. More testing is needed to ensure I have the right priorities. This vastly simplifies the previous contorted logic. Verify Diff status should now be correctly reported, whereas it was previously lost. kes Reduce some debug output. kes Apply Joao's patch to SQLite tables to make chars work. 27Oct08 ebl Fix #1175 About update slots that don't reset InChanger flag when slot is empty. ebl Fix #1173 where prune_volume() returns a volume from the scratch. 25Oct08 kes Remove jobq.c constraint that read and write SD must be different. This may lead to more deadlocks in the SD, but they should be resolved there. kes Ensure that job report is always printed even if job is failed in the director. kes Don't print job report twice for failed VBackup jobs. 24Oct08 kes Fix editing of retention time difference to use 64 bit int instead of 64 bit unsigned. This should permit very long retention periods. kes Implement code to prohibit a write job from appending to a Volume that will be used for a read operation. This is new code and could possibly cause some conflicts. 23Oct08 kes Integrate James Harper's Exchange Win32 plugin patch. kes Apply patch from Marco van Wieringen that implements the new Solaris libsec interface for ACLs so that Bacula can save and restore both the new ACLs and old ACLs. kes Marco's patch also corrects the file dependency generation code so that it works properly both with shared libraries and static libraries. kes Marco's patch also includes a small cleanup of the cats Makefile to remove some references to non-existent files. 22Oct08 kes Modify win32 Makefiles to use full paths in most cases. In particular add MAINDIR environment variable that points to the main Bacula source directory. 21Oct08 kes Add read volume list code to SD -- not yet used. kes Add James' binutils patch kes Split volume management code out of src/stored/reserve.c into a new file vol_mgr.c kes Modify configure to do an automatic make clean. This ensures that any changes to ./configure options are handled correctly. Beta Release Version 2.5.16 19Oct08 kes Add Makefile dependency when using LIBTOOL_LINK so that any change in ./configure options will be accounted for. 18Oct08 kes Fix typo in the ACL patch that I overlooked. kes Apply Marco's libtool include patch. 17Oct08 kes Apply Bastian Friedrich's ACL patch to eliminate ACL errors during restore. kes Minor cleanup of create_restore_volume_list() code. kes Fix typo in console Makefile.in 16Oct08 ebl Fix #1110 about RunScript that can't execute a script with Unicode caracters in the path. 15Oct08 kes Apply tray-monitor patch from Bastian Friedrich to make it work with the new FD. 14Oct08 kes Apply cleanup patch from Marco kes Apply patch from Marco van Wieringen that implements libtool to create shared objects out of the Bacula libraries. kes Fix tray-monitor so it will speak to new FD. ebl Fix bug with ansi label when volume name length < 6 ebl Fix segfault in debug level > 50 with btape. ebl Remove warning message in btape when command is empty. kes Fix Win32 build to pull in new BACULA define. 13Oct08 kes Change IncludeDir to Exclude Dir Containing. kes Implement code to prohibit ExcludeDirContaining in an Exclude section (same for Plugin and Options). A bit of a kludge with RES_ITEM2 ... ebl Add field to command list to restrict Runscript console command. ebl Use a separate JCR when running Console command with Runscript. ebl Permit to mark version as Beta in some ouputs 11Oct08 kes Add plugin types in jcr.h to reduce need to cast. kes Do better checking of plugin return values. kes Free plugin context after calling pluginFree() as requested by James. kes Allow plugin to call JobMessage with NULL context. kes Do not add plugin to global list if loadPlugin returns error. kes Rework plugin.h a bit to reduce dependence on Bacula. 10Oct08 kes Move generation of bsr file for Virtual Backup to run section so that it is generated just before actually running. Suggested by Graham Keeling. 09Oct08 kes Add malloc and free Bacula entry points for plugins. Increment FD plugin interface version. Create a bacula plugin context structure to keep track of whether or not the plugin is disabled. kes Apply FileIndex fix for plugin name stream suggested by James. kes List plugins in FD status report when debug > 0. 08Oct08 ebl Add a new VerId variable that is printed in version command. kes Fix migration SQL not to migrate a job that has not terminated. This is a partial fix to bug #1164. kes Sort JobIds returned from db_accurate_get_jobids() to fix Virtual backup start time bug reported by Graham Keeling. 08Oct08 ebl Fix possible bug in cancel_job() with job that are not yet created. 07Oct08 kes Fix bat build for Win32. 06Oct08 kes Copy plugin link field into ffpkt. 05Oct08 kes Integrate patch from Kjetil Torgrim Homme It provides FileRegex in bsr files and code to collect regex from the user during restore, an Allow Mixed Priorities feature, and documentation for the above. ebl Remove db berkeley from configure process kes Do dirty check on hostname (Linux only) and if not resolvable use localhost as default. kes Increase vtape max block to 20GB. 04Oct08 kes Refactor restore code to create a close_previous_stream(). This This may destabilize the source. kes Implement planned startRestoreFile() plugin call. ebl Remove missing Loaded information from status slots storage command. ebl Fix Console command problem that cancels the job kes Add more plugin restore debug code. 03Oct08 kes Fix plugin_bwrite - plugin-blseek mixup pointed out by James. kes Rewrite plugin restore interface a bit to correspond to how Bacula creates and writes to the restored file. kes Add some DebugMessage() calls to the bpipe-fd.c program. 30Sep08 kes Apply Marco van Wieringen's set of patches, cleans up Migration/Copy Implement 'Pool Uncopied Jobs', allow Solaris Compiler to build Bat; allow add and delete in place of mark and unmark. kes Another attempt to fix the endRestoreFile plugin bug noted below. 29Sep08 kes Apply dbi driver patch from Joao. kes Correct a bug in passing the context to the endRestoreFile() plugin command. Bastien Friedrich reported the bug. kes Create plugin instance only when FD job starts. kes Add new FD plugin event: bEventCancelCommand when a cancel command is issued to the FD. 28Sep08 kes Add cmd_plugin flag to jcr so we can globally know if a command plugin is running. kes If command plugin running, do not attempt (for the moment) to get Win32 extended attributes. kes Ensure that proper Win32 flags are set in bfile packet if plugin_bopen() works on Win32. kes Remove generated src/plugins/fd/Makefile 27Sep08 kes Implement build and install of bpipe-fd.so plugin. kes Rework the interface that passes packets to the plugin so that the packet is started and ended by the packet size. This allows the driver to do a sanity check. 26Sep08 kes Rework the pluginIO Bacula internal code to enable proper handling of Win32 error codes from GetLastError. kes Apply Joao's patch to regress startover_libdbi. 25Sep08 ebl Add -B option to dbcheck to get catalog information kes Fix Win32 build to include new library function. kes Remove some old reader/writer code. kes Implement ./configure --with-plugindir=xxx ebl Fix the mysql bug in the new accurate code kes Improve plugin debug. Create plugin test. kes Set main thread specific data to INVALID because it has no jcr. This allows debug output to work correctly. kes Add src/plugins/fd/Makefile to ./configure process. kes Make first cut attempt to correct SQL that computes the current Pool usage. This is to fix bug #1159. kes Do a bunch of plugin cleanups for Win32 and more careful checking of PluginDirectory and whether or not a plugin was found. 24Sep08 kes This code should fix the race condition that leads to a Director crash at job end time when the job list is updated. This was reported in bug #1162. kes Add more plugin documentation and fix include of config.h for Win32 build (I hope). 22Sep08 ebl Revert to htable instead of rblist ebl Cleanup accurate code (remove tcdbm parts) and use red/black tree instead of htable. ebl Use a dedicate DB link to compute and send the accurate list file to the client. 21Sep08 kes Fix compile errors in filed/fd_plugin.c. 20Sep08 kes Remove all double quotes from SQLite creating script and replace by single quotes as suggested by John Huttley. 18Sep08 kes Apply dbcheck patch from Yuri Timofeev . It significantly improves the performance of dbcheck for MySQL. kes Fix bad debug code call in src/filed/accurate.c 17Sep08 kes Change two Jmsgs in accurate to Dmsg to reduce unnecessary output. Perhaps we really need to implement M_SAVED. 16Sep08 kes Fix bug #1156 FD crash during processing of Accurate data. kes Tweaks to htable code to improved debugging and make names a bit more meaningful. 15Sep08 ebl Remove time_t from update_stats() 14Sep08 kes Modify the license of the example plugin program to allow it to be used by anyone for making a Bacula plugin. kes Make apply_rp_codes() in bpipe-fd.c be static. 13Sep08 kes Remove Encryption and Accurate lines in vbackup output -- not used. kes Fix subtle bug in vbackup by not changing DEV_RECORD packet. kes Add host name to items printed during dump. kes Make Check File Changes default on. 11Sep08 kes Set the default FD timeout to 3 minutes (previously 30). kes Apply Bastian Friedrich's weird spelling correction patch. 10Sep08 kes Always print Verify hash differences. Rename variable to make the code slightly more readable. 09Sep08 kes Correct tests for MaxFullInterval as reported by Ulrich Leodolter .. kes Fix MaxDiffInterval code as well. kes Enable Win32 plugin load code in lib. kes Make Verify code that computes disk checksums use the same algorithm as backup when dealing with sparse files. kes Attempt to run VSS on any systems newer than Vista -- should make it work on Windows Server 2008. ebl Change the new statistic implementation. Remove the UseStatistic directive and add a 'update stats [days=...]' command. You can now decide when copy job records from Job table to JobStat. Statistics are much more accurate with this. 08Sep08 kes Fix SQL case problem that may cause the failure of DiskToCatalog in bug #1149. kes First cut adding SD plugins. 03Sep08 kes Add Slot if it is non-zero to writing bsr file after a backup. kes Change a number of bnet_fsend() into class method calls. kes Begin audit of diff of 2.4 branch to trunk code. 01Sep08 ebl Fix the mysql creation script that double-created an index of the same field on the Media table. Add an index to on VolumeName to the Media table for mysql. 30Aug08 kes Another try at fixing Vbackup. It looks much better this time. Disable file index sanity check in FD with value stored in attributes record because with Vbackup the File Index gets changed, but not the attributes record. Enhance some debug code. Fix handling of re-indexing records that are copied in Vbackup. 29Aug08 kes Made level_to_str() know about Virtual backup. kes Set correct Virtual backup write pool. kes Fix compile warning in new dbcheck port code. kes Fix migration code broken by previous virtual backup fix. 28Aug08 kes Fix problem of Virtual backup not writing a sequential FileIndex. kes Reset Virtual backup time/date to the value from the last backup. kes Ensure that storage name is passed to SD on read. kes Correct a problem with Level and Virtual backup, rework how bsrs are printed in debug to use standard routine. kes Apply patch from Chris in bug #1133 that provides alternate db port support for dbcheck. ebl Remove catalog dependency from bcopy tool. ebl Modify catalog scripts to have an easier packaging integration, using default variables. Make difference between SQLite3 and SQLite in db_get_type() 27Aug08 kes Apply most of changes in a patch from: Michael Stapelberg that allow the Bacula FD to compile on IRIX 6.5. 26Aug08 kes Apply patch from Bastian Friedrich that accepts a yes on a delete volume command line. kes Attempt to fix bug #1128 InChanger flag cleared during Migration job when reading from one autochanger and writing to another. kes Minor tweaks (copyright dates convert to use method instead of bnet). 21Aug08 kes Fix NULL Volume error when reading (or Migration or VBackup) must switch drives when no tape is mounted. 18Aug08 kes Add additional info to some SD messages. kes Add fix supplied by Martin Simmons for turning off EOL character in new console multi-command code. 14Aug08 kes Fix a Verify InitCatalog problem where in certain cases a garbage filename may be entered in the verification database. This fixes bug #1143. 13Aug08 kes Add VSS 64 bit dll entry point in src/win32/filed/vss_generic.cpp sent in by Riyas Yoosuf. 12Aug08 kes Fix seg fault in Dir during estimate command with no level value given. This fixes bug #1140. 08Aug08 kes Add message to migration job when the target job is already migrated. This closes bug #1129. 30Jul08 kes Fix Win32 build. kes Raise some restore debug levels. kes Replace off_t by boffset_t where ever I found it. 28Jul08 kes Define a machine dependent ioctl request type for use with vtape_ioctl(). 26Jul08 kes When a migration job actually runs, re-check the Job record and skip if the job is already migrated. This should significantly reduce the problems with bug #1129. 24Jul08 kes Set MALLOC_CHECK_=0 in environment before starting Bacula to turn off glibc checks that prevent getting good dumps. kes Implement console 'wait mount' command. Doesn't yet work. kes Implement timeout=nn on console 'wait mount timeout=nn' command. kes Break the do_swapping into do_unload, do_swapping, and do_load. It is much more logical that way. kes Implement a set_dcr_from_vol subroutine in acquire.c for reading volumes. This allows the dcr to be refreshed after being zapped when the wrong volume is mounted. This should fix bug #1126 -- During multiple tape restore, bacula does not ask for physical tape change, but rereads same tape 23Jul08 kes Apply patch submitted for bug #1107 with a small modification. This fixes a bug where bcopy copied too many records. kes Make some tweaks to bsmtp based on patch submitted in bug #1124. This fixes bug #1124. kes Make the default bat restore Pool be Any. This fixes bug #1118. 22Jul08 kes Remove debug statement that crashes the SD at the end of a tape during restore. Fixes bug #1125. 21Jul08 kes Implement Win32 bat changes made to Branch-2.4 20Jul08 kes Tweak separator command in console to start disabled and allow defining no separator character. Also make code a bit more fault tolerant. kes Make btraceback write the traceback to the working directory before attempting to mail it. kes Add a RFC to Projects. 18Jul08 kes Attempt to implement a kludge to make Qt work with bat on Win32. kes Setup rstorage correctly. Virtual backups are working. 17Jul08 kes Move setting JobLevel and JobType into a method, which should allow completing Virtual Backups. kes Fix verify jobs to work again. 16Jul08 kes Virtual Backup tweaks -- it is close to working. 15Jul08 kes Ensure that SD tried to mount a volume not in an autochanger at least once before asking for operator intervention. kes Make SD aware of Virtual Backup jobs. kes Add VirtualFull for bat. kes Changes to get read storage correct for Virtual Backup. 14Jul08 kes Remove old code from label.c kes Split display_display_info() out of write_bsr_file() kes do_vbackup_init() working -- i.e. bootstrap file built. kes Change Bacula trademark owner from John Walker to Kern Sibbald kes First non-working cut of vbackup kes Correct FD heartbeat code to use volatile variable accessed by two threads. kes Zero thread id with memset if on Win32 in case it is a struct. kes If cannot create JobMedia record, continue to try to write eof and clean up in block.c 12Jul08 kes Add code to interface OpenSSL to new Win32 pthreads code which used a structure for thread_t. 09Jul08 ebl tweak bat for win32 compilation 08Jul08 ebl Remove tokyo cabinet from the source ebl Update configure/autoconf to support berkeley DB ebl Add a sort to db_get_file_list() to improve bsr construction time. 07Jul08 kes Add a mtx-changer.conf file that is not overwritten during an upgrade. It fully configures the mtx-changer script. kes Clear in-use bit on vol when unused while swapping. 06Jul08 kes Remove sleep at end of ./bacula kes Clear hash packet for hardlinked files correctly. This corrects a long standing bug where hardlinked files selected individually would occasionally not be restored. 05Jul08 kes Apply Eric's patch to ensure that autoprune does not return a Volume not in the autochanger unless requested to do so. kes Correct bat restore display of multiple drives. This fixes bug #1117. kes Do find_a_volume() each time an unload is done. This fixes the failure of maxvol2-test. 04Jul08 kes Add some SD debug code. kes Do find_a_volume() each time an unload is done. kes Apply Joao's DBI patch that adds easier configuration of DBI drivers, and adds --with-db-port to ./configure. kes Use Qmsg() in job.c watchdog callback. 03Jul08 kes Release main control rwlock if ABORTing. kes Make watchdog connect timeout queue messages rather than sending directly to avoid lock conflicts with the real thread. kes Add const char in dbd.c to avoid compiler warnings. kes Fix python compiler string warning. Note, IMO the GNU C++ compiler guys have made a *very* bad change to their compiler. They now force all strings to be 'const' unless you explicitly cast them, which is extremely ugly and ruins nice code as well as creates a lot of useless work. 02Jul08 kes Fix mtx-changer to detect both versions of Ubuntu (Debian) mt. This fixes bug #1116. kes Add const in python files to reduce compiler warnings. This may have to be backed out because of later compiler strict checking. kes Fix failure of 2drive-concurrent-test. Always read label; clear_unload() only after drive is defined in acquire_for_read(). 27Jun08 kes Generally clean up the manual tape loading code. The main conceptual change is that when a volume is marked to be unloaded, its volume name is retained, and it is only marked as unloaded when either the autoloader says it is unloaded or another tape is read on that drive. 25Jun08 kes Add debug code and refactor subroutine in stored/mount.c kes Fix format problem in bscan output reported in bug #1105. ebl Fix get_next_volume_for_append logic with autochanger - use pruned volumes if found - don't reset the inchanger flag after getting a recycled volume or a scratch one Fix recycle_oldest_purged_volume to take InChanger flag in account 23Jun08 ebl Add mmap/unmmap implementation for tokyodbm under win32 22Jun08 kes Make first step toward eliminating globals from config scanning. Also should be a workaround for FORTIFY_SOURCE GNU C bug -- fixes bug #1042. 21Jun08 kes Apply duplicate job tests to restarted jobs. kes Copy more data when restarting a job so that run overrides are kept. This should fix bug #1094. 20Jun08 kes More word alignment cleanup. kes Fix bug where SD did not ask operator if the device could not be opened. Reported by Eric. 19Jun08 kes Add dbuser to DIR conf file (replaces user). kes Add --with-db-password to ./configure kes Fix regress to handle db_password. ebl Add new 'status storage slots' that list autochanger content. ebl Update vtape driver to compile only under Linux. ebl Fix a bug when restoring with a wrong mediatype. 18Jun08 kes Eliminate ints from conf files and structures to avoid word alignment problems 17Jun08 kes Fix bug reported by Scott Barninger where the bacula script refers to scripts in the wrong directory. Needed to meet the requirements of recent FHS location changes. ebl Disable vtape for FreeBSD. 15Jun08 ebl Modify disk-changer to check if slot contains something before loading it. 14Jun08 ebl Fix vtape on win32 and debian. ebl Fix autoselect patch (cause segfault). 13Jun08 ebl Fix autoselect option broken for a while. Fix #1089. Need some work with StorageId to be able to use a particular drive in a autochanger. 09Jun08 ebl Rename vtape to vtape. ebl Update vtape driver. 08Jun08 ebl Modify vtape driver to avoid sparse file. kes Add make clean of qt-source directory during ./configure kes Store last block number written to tape in DEVICE and use it for testing for correct last block on EOT. 28Dec08 Release Version 2.4.4 27Oct08 Release Version 2.4.3 26Jul08 Release Version 2.4.2 07Jul08 Release Version 2.4.1 04Jun08 Release Version 2.4.0 25Jan08 Release Version 2.2.8