]> git.sur5r.net Git - bacula/bacula/commitdiff
Update notes
authorKern Sibbald <kern@sibbald.com>
Sun, 19 Oct 2008 10:49:41 +0000 (10:49 +0000)
committerKern Sibbald <kern@sibbald.com>
Sun, 19 Oct 2008 10:49:41 +0000 (10:49 +0000)
git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@7842 91ce42f0-d328-0410-95d8-f526ca767f89

bacula/ChangeLog
bacula/ReleaseNotes
bacula/technotes-2.5

index e65d42a68d9c4b918c8d96f51a7c382562fc0751..fb904ed42f18c426aa10f7fa41adcc85ddcd8da8 100644 (file)
-              Technical notes on version 2.4.x
+              Technical notes on version 2.5.x
 
 General:
-Release Version 2.4.2
+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 <mvw@planets.elm.net>
+     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 <kjetilho@linpro.no>
+     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 <tim4dev@gmail.com>.
+     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 <ulrich.leodolter@obvsg.at>..
+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 <michael+bacula@stapelberg.de>
+      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
+     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.
@@ -21,23 +289,56 @@ 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  Minor cleanups.
-kes  Fix bug #1125 which reports a SD crash at the end of a tape
-     during restore. It was a debug statement that should not be
-     in a release.
+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
-ebl  fix #1034 by setting big timeout on mysql connections
-19Jul08
-kes  Do partial integration of the Win32 bat build created by Eric.
-kes  Fix bat not to block.
+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  Fix a pthreads bug in the Win32 pthreads emulation code.
-
-
-Release Version 2.4.1
+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
@@ -51,68 +352,96 @@ 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.
-
-Release Beta version 2.4.1-b2
-04Jul08 
+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  Remove const char that causes problems with Python, which has
-     older 'incorrect' headers.
 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().
-
-Release Beta version 2.4.1-b1
-01Jul08
-kes  Back out bad src/lib/base64.c change.
 27Jun08
 kes  Generally clean up the manual tape loading code. The main
-     conceptial change is that when a volume is marked to be unloaded,
+     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.
-26Jun08
-kes  Fix a recycling problem with two autochangers reported in bug
-     #1106. This may also (unlikely) fix a second recycling bug as
-     reported in #1103.
-kes  Fix a SD lock volumes deadlock problem reported in bug #1100.
+     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.
-kes  Backport updates to jobq.c where possible.
 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.
-kes  Fix a couple of pedantic compiler warnings.
-ebl  Fix bug when starting a restore on a storage that doesn't
-     have the requested MediaType.
+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  More work on word alignments -- eliminate all ints from 
-     the configuration routines.
+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.
-kes  Fix word alignment problem on non-Intel 64 bit machines
-     such as Solaris.  This should fix bug #1097 -- bus error in SD.
-12Jun08
-kes  Add missing win32/patches/wxWidgets.patch to 2.4 repository.
+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.
 
-Release Version 2.4.0
+Release Version 2.4.0:
 04Jun08
-kes  Update version to reflect the magnitude of the SD changes.
+kes  Fix Win32 build.
 03Jun08
 kes  Make sure to clear JS_WaitMedia when operator mounts a Volume.
      This fixes bug #1095.
@@ -127,8 +456,10 @@ kes  Make DEVICE Slot private and access it via a method.
      Allows better control over when it is set and cleared.
 kes  Fix possible seg fault if SQL error.
 28May08
+kes  Add Martin's fixes to argument scanning for the estimate   
+     command. This fixes bug #1093.
 kes  Add debug code to SD.
-kes  Fix renaming a Volume, which used the wrong Volume name. 
+kes  Fix renaming a Volume, which used the wrong Volume name.
 26May08
 kes  If operator has rewind tape, print warning, release tape and
      try once more. If tape is positioned somewhere, something went
@@ -138,18 +469,18 @@ kes  Ensure correct volume name displayed during restore
 kes  Ensure that Volume is mounted for restore.
 25May08
 kes  Fix a few more Coverity reported problems.
-
-Beta Release Version 2.2.10-b4
 24May08
+kes  Apply Allan Black's status dir job count patch.
+ebl  Add information about IMPORT/EXPORT slots in mtx-script.
 kes  Enhance a couple of SD debug messages.
 kes  Tweak unload flag setting and ensure it is set during swap.
 23May08
 ebl  Fix #1091 about bad output in estimate command.
 21May08
 kes  Modify autochanger locking to attempt to avoid race
-     conditions.
+     conditions. 
 kes  Make sure device not busy before doing label command.
-kes  Display open() errors except when polling. Previously too 
+kes  Display open() errors except when polling. Previously too
      many were suppressed.  This should fix bug #1070.
 kes  Fix Win32 reparse points. Bacula will not recurse into any
      reparse point directory, including mount points, unless the
@@ -161,23 +492,33 @@ kes  Fix Win32 reparse points. Bacula will not recurse into any
 kes  Remove double quotes from ChangeLog and ReleaseNotes
 kes  Remove StorageId test when pruning and recycling (Eric's changes).
 kes  Remove old form of locking when getting volumes -- causes deadlock.
+kes  Change bat dirstat layoutWidget to dirstatlayoutWidget to make
+     the name unique and to eliminate compile time error.
+kes  Add accurate.o to Win32 FD Makefile
+19May08
+kes  Fix cats dll build on Win32 after db_update_job_end_record
+     calling sequence change.
+ebl  Switch to tokyo dbm instead of htable in accurate code
+ebl  Include tokyo dbm to bacula source tree
 17May08
 kes  Fix buffer overruns detected by Coverity.
-
-Beta Release Version 2.2.10-b3
+13May08
+kes  Tweak joblog display.
 12May08
 kes  Implement --without-qwt
 kes  Fix layout of restore tree dialog
 kes  Add configure bat QWT libraries, so that bat can be built
      with or without the QWT libaries.
 11May08
-kes  Apply batfix bat cleanup patch from Riccardo.
+ebl  Add dummy tape driver for regression tests.
 kes  Make sure we unload the right slot when swapping.
+10May08
+kes  Add debug times, reduce size of two-pool-changer test 
 08May08
+ebl  Tweak autoconf scripts for vtape
+07May08
 kes  Improve SD reserve debug code.
 kes  Testing an improvement to free up volumes no longer in use.
-
-Beta Release Version 2.2.10-b2
 03May08
 kes  Rework SD acquire for read to handle autochanger Volume
      swapping.
@@ -186,37 +527,51 @@ kes  Implement regression that explicitly tests swapping a Volume
 kes  Enhance disk-changer to detect most error conditions.
 kes  Fix SD code so that it properly swaps a Volume between drives.
      This fixes bug #1083.
+02May08
+kes  Apply libdbi patch from Joao Freitas for regress and for 
+     Bacula trunk. Regress now works with libdbi. Nice.
+kes  Apply .nobackup patch from bug #1077 submitted by 
+     Edwin Groothuis.
+kes  Apply Bastian Friedrich's patch that adds %p to edit the pool
+     name into jobs cloned via the run directive.
 01May08
 kes  Prevent a Volume that is being swapped from being freed from
      the volume list. This will most likely fix, at least partially,
      bug #1083.
 kes  Fix strippath so that it does not get a buffer overrun and crash FD.
      This fixes bug #1078.
-kes  Make inability to change owner/group when creating a dir only a
-     warning rather than an error.
+kes  Remove 50 millisec wait in SD that broke debugger.
+ebl  Add MaxRunSchedTime option that specifies the maximum allowed time 
+     that a job may run, counted from when the job was scheduled.
+ebl  Fix MaxWaitTime option that specifies the maximum allowed time that 
+     a job may block waiting for a resource, counted from when the job starts
+ebl  Rename (add) Max(Incr|Diff|Full)WaitTime to Max(Incr|Diff|Full)RunTime
+kes  Apply patch from bug #1076 by Tullio Andreatta <t.andreatta@troppoavanti.it>
+     that implements multiple commands per line in the console when using 
+     readline. Modify the default to use a semicolon as the command separator.  
 28Apr08
-ebl  Fix SQL query in migration code
+ebl  Fix SQL query in migration code.
+ebl  Make accurate mode with hash disk pass regression tests
+27Apr08
+ebl  Implement first cut of accurate backup with hash disk.
 19Apr08
 kes  Force unload of volume when wrong volume mounted in SD.
 17Apr08
 kes  Fix bat seg fault at termination.
 kes  Add Bacula generated version to bat about box.
-
-
-Beta Release Version 2.2.10-b1
-16Apr08
-kes  Permit multiple simultaneous restores -- experiment.
-15Apr08
-kes  Backport development stream SD reservation system changes.
-     See below:
-===
 16Apr08
+kes  Experiment with allowing multiple read jobs.
 kes  Move final volume swapping code to DCR method and
      call it from acquire_for_read().
 kes  When wrong volume is mounted during read, unload_autochanger.
+15Apr08
+kes  Integrate the libdbi changes from Joao Henrique Freitas
 14Apr08
 kes  Stop searching for Volumes in SD askdir if DIR returns the
      same volume name twice in a row.
+kes  Close bat console windows first to eliminate error message
+     from the notifier.
 13Apr08
 kes  Tweak the swap Volume from one drive to another code so that
      it now seems to work.
@@ -241,6 +596,11 @@ kes  Correct name overloading in mount.c
 kes  Replace released flag in VOLRES with reserved and add access
      methods for the VOLRES class.
 kes  Prevent volume from being released while being swapped.
+kes  Apply Bastian Friedrich's edit codes patch for the bpipe-fd
+     plugin that add %w (where) and %r (replace flag) editing to
+     the plugin line.
+kes  Apply Bastial Friedrich's edit pool=%p patch for run clone
+     jobs.
 kes  Refactor parts of stored/mount.c
 09Apr08
 ebl  Add sanity checks for VolWriteTime and VolReadTime
@@ -254,44 +614,29 @@ kes  Do not prune any running job. It just fails the job.
 kes  Lock the volumes when changing dev->reserved_device and marking
      the volume unused otherwise the device can get reserved by
      another job before the volume is released, thus blocking it.
-===                                        
-
-Beta Release Version 2.2.9-b7
-14Apr08
-kes  Close bat console windows first to eliminate error message
-     from the notifier.
-kes  Remove useless code in Scheduler that causes seg fault on
-     termination.
-kes  Correct some SD catalog request error messages.
-kes  Don't allow pruning of any running job.
-kes  Turn off code in read_record that causes a seg fault in the SD
-     when reading past an EOS_LABEL.
-kes  Turn off unloading the autochanger in reserve.c as it just
-     causes problems.
-kes  Lock volumes when unreserving a device.
-kes  Do not mark volume unused when recycling.
-kes  When acquiring, don't mark volume unused if it is reserved (busy).
-
-Beta Release Version 2.2.9-b6
 06Apr08
-kes  Eliminate ./configure warning on po directory
+kes  Correctly detect Ubuntu systems, and add ubuntu platform directory.
 kes  Fix bug #1063, reuse of freed ptr in list nextvol.
 kes  Release regex compile buffer in filed/job.c
 kes  Add proper type of const char in sql_create.c
 kes  Turn off debug in daemon termination routines
 kes  Move free_volume_list() before devices are freed in stored.c
-kes  Fix reference to uninitalized stack variables in bregex.c.
+kes  Fix reference to uninitalized stack variables in bregex.c. 
      This should correct bug #1067.
 04Apr08
 kes  Fix possible seg fault in SD when freeing a volume entry.
+03Apr08
+kes  Implement unload_dev() before swap device.
+ebl  Add statistics prunning with option and menu
+kes  Separate unload_dev() from unload_other_device() in autochanger.c
 02Apr08
 kes  Apply patch from bug #1069 that corrects spurious error messages
      when ACLs enabled on SGI but no ACL exists.
-ebl  Fix a storage deamon segfault at debug level 500.
-
-Beta Release Version 2.2.9-b5 -- not released
-
-Beta Release Version 2.2.9-b4
+ebl  Fix small segfault in bacula-sd when debug level is 500
+kes  Modify run_program() and run_program_full_output() to use
+     call by reference for the results string. This corrects a long
+     standing problem where the address of the string may be changed
+     in the subroutine but not in the calling program.
 01Apr08
 kes  Re-enable code to remember last volume mounted on a non-tape
      Autochanger.
@@ -300,53 +645,225 @@ kes  Add patch supplied in bug #1068 that fixes a SD crash when using
 kes  Generate correct JobMedia records during spooling/despooling when
      running concurrent jobs.  Thanks to Tom Ivar Helbekkmo
      <tih@hamartun.priv.no> for excellent analysis and testing.
-
-Beta releae version 2.2.9-b3
+31Mar08
+kes  Tweak hash algorithm for htable using Martin Simmons idea
+     for doing a circular shift.
+kes  Remember what volume is in VTLs (previously turned off for
+     testing).
+kes  Analysis of JobMedia records by Tom Ivar Helbekkmo <tih@hamartun.priv.no>
+     pointed out some problems in creating JobMedia records during
+     spooling with concurrent jobs. Fix the problem by updating the
+     start file position before despooling and generate a jobmedia
+     record at the end of despooling.
+28Mar08
+kes  Fix handling of JobMedia records during spooling and when a
+     Volume is changed without actually writing data to the Volume.
 27Mar08
 kes  Rework certain SD locking based on gdb tracebacks of deadlocks
      sent by Eric. This code now uses only the volume_lock() rather
      than the reservations lock when at EOM and acquiring a new
      volume. 
 kes  Ensure only one exit point in several subroutines.
-
-Beta release version 2.2.9-b2
+26Mar08
+kes  Implement bsock code to permit locking. Use the new code in Verify
+     in the FD to prevent the heartbeat thread from disrupting the Verify
+     data sent to the Dir.
+kes  Modify SD locking to eliminate locking the reservations system from
+     outside the system. Use the volume lock when getting media data
+     and reserving a new volume at end of media.   
+kes  Add Eric's volume_unused() fix to stored.c so that Volumes found
+     when SD starts are not locked into place.
 24Mar08
-kes  Fix to initial tape drive open to release the volume name
-
-Beta Release Version 2.2.9-b1
+kes  Fix error compiling runscript code on 64 bit machines.
+kes  Tweak Win32 mount point code.
+kes  Fix a couple of bugs in the accurate code (bad sscanf, buffer not
+     cleared giving bad file estimate).
+kes  Implement BIG_MALLOC in htable code. Runs 2.5 times faster for
+     5 Million entries.
 22Mar08
-kes  Fix to JobMedia fix.
-kes  Fix bug pointed out by Peter Much that causes the StorageId to
-     be updated when reading a tape (during migration, it could have
-     been incorrectly set to the write StorageId).
+kes  Keep Schedule run lists in order as suggested by
+     Bastian Friedrich.
 21Mar08
-kes  Implement autostart scripts for Debian 
+kes  Implement autostart scripts for Debian.
+ebl  Implement upgrade catalog scripts.
 20Mar08
+ebl  Apply jobstat patch for long term statistics. Have to implement
+     purge stats command and upgrade scripts.
 kes  Fix mtx-changer.in for broken Debian mt program.
 19Mar08
-kes  Massive commit of all fixes and back ports to create 2.2.9
+kes  Fix large number of JobMedia records reported by Eric Bollengier.
 18Mar08
 kes  Apply doc fix from bug #1062.
 kes  Resolve crash and improper restore wx-console Win32 restore
-     GUI. Fixes bug #1065.
+     GUI. Fixes bug #1065.                   
 kes  Update Win32 wxWidgets to latest version.
 kes  Attempt to do correct handling of Win32 mount points. Should
      fix bug #1046.
 kes  Fix Win32 FD backup/restore memory leak due to improper termination
      of BackupRead/Write. This fixes bug# 1038.
-kes  Add const to AIX prototype for initgroups()
+16Mar08
+ebl  Reduce memory usage for accurate backup, working only with ctime
+     and mtime. (not all Lstat field) 
+     About 40MB for my Linux system (400.000 files)
+14Mar08
+kes  Add dcr->reserved_volume flag that allows us to release a volume
+     even if it is not vol->released.  This allows maxvol2 to work when
+     Volumes expire and we are already writing to the device (i.e. a
+     volume is pulled out from under us by another job terminating after
+     we reserve the drive).
+13Mar08
+ebl  Permit multiple command/console per runscript definition.
+     RunScript { command = /bin/true ; command = /bin/false ... }
+ebl  Add RunsWhen = AfterVSS to runscript. You can execute a command
+     (restart an application) just after the VSS snapshot on windows.
+kes  Don't zap dcr values during release_volume() as they might
+     have the next Volume to be mounted.
+kes  Fix AIX prototype.
+12Mar08
+kes  Second cut of drive switching during backup.
+11Mar08
+kes  Fix Win32 build.
+kes  Update Win32 version of wxWidgets to most recent version.
+kes  Tweak Copy job details.
+kes  Rework dir_find_next_appendable_volume to make a bit more effort
+     to find a suitable volume before giving up.
+10Mar08
+kes  Make ask_sysop_to_create... to return if waken from wait.
+     This helps get out of blocked conditions.
+kes  Experimental implementation of switch_device in reservations. 
+kes  Implement FD version to allow easier protocol changes.
+kes  Add Plugin Options string -- not yet passed to FD.
+kes  Implement PluginOptions ACL.
+09Mar08
+kes  Attempt to correct problems with restores with autochangers and
+     use counts going negative 
+kes  Rework SD status command and implement API for bat. Implements
+     header, runing waitreservation, devices, volumes, spooling,
+     and terminated status keywords.
+     .status storage=xxx <keyword>
+kes  Clarify TLS error message by adding double quotes around name.
+kes  Simplify SD/FD status code by putting api flag in STATUS_PKT
+kes  Pass jcr to tls routines so debug messages can be handled better.
+kes  Rework jobq resource allocation code, and possibly fix a bug
+     that caused reference counts to get out of sync.
+08Mar08
+kes  Rename fd/dir plugin to use Bacula standard underscore.
+kes  Plugin work -- bring dir up to fd level.
+kes  Start implementation of VTL code
+kes  Fix Win32 build after adding new cats subroutine.
+06Mar08
+kes  First cut at Duplicate Job implementation.
+05Mar08
+kes  Fix bugs in MaxFullInterval and Implement MaxDiffInterval.
+kes  Start PluginOptions string, and refactor a bit of ua_run.c
+ebl  Apply Allan patch that permit to reset recyclepool. 
+04Mar08
+kes  Test patch -- possible fix or improvement for bug #1053
+kes  Refactor FD and SD status commands to permit new API code in
+     SD, and to fix Win32 build.
+kes  Win32 build is now working.
+03Mar08
+kes  Implement 'MaxFullInterval' and start 'MaxDiffInterval' based on
+     some ideas in patch from Scott Bailey.
+kes  Begin implementation of duplicate Job control.
+kes  Fix some of Win32 build after recent additions.
+kes  Apply patch from Frank Kardel that implements 'honor no dump flag',
+     which causes the FD to detect whether or not the OS has the 
+     honor no dump bit (*BSD systems), and if so, to skip backing up
+     any file with this bit set.  The feature is enabled by setting
+     'honor no dump flag = yes' in the Options section of a FileSet.
+28Feb08
+kes  Correct po warning message with datarootdir
+kes  Implement more code in dird.c to put configuration parsing in
+     a class rather than use globals.
+kes  Restructure SD status command for implementation of bat API
+     interface.
 27Feb08
-kes  Undo bug #1047 heap overrun fix as it is not correct.
+kes  Suppress incorrect 'Will not descend from x into y' messages.
+kes  Eliminate FORTIFY_CODE=2 bug, and make first cut at removing 
+     daemon globals used by parser.              
+kes  Apply Joao's patch to separate DB_TYPE and DB_PROG in configure.
+26Feb08
+kes  Fix free of plugin_list when none exists.
+25Feb08
+ebl  Apply accurate project patch.
+24Feb08
+ebl  Fix a segfault when using strip_path option. (Use of pm_strcpy
+     on non-mempool object) 
+kes  First cut of converting FD .status to work with bat API.
+     New form is:
+     .status client=XXX header
+     .status client=XXX running
+     .status client=XXX terminated
+kes  Implement first cut of Copy Job.
+kes  Implement Catalog in Pool resource. It overrides catalog specified
+     in the Client resource.
+22Feb08
+kes  Apply patch (with some difficulties) from Joao Henrique Freitas 
+     <joaohf@gmail.com>, which adds support for libdbi as a Bacula
+     database driver.
+kes  Add patch from Martin Schmid scm@apsag.com that checks to see if
+     ftruncate() actually works. In the case of some (cheap) NAS devices,
+     it does not, and so recycling NAS Volumes does not work. The code
+     simply unlink()s the file, then recreates it.  This fixes bug #1011.
+21Feb08
+kes  First incomplete cut of big malloc blocks for htable.
+kes  Tweak plugin code.
+17Feb08
+kes  Plugin debug code + tweak a couple bat dialog layouts
 14Feb08
 kes  Fix creating first JobMedia record during Migration to include
      proper index. This caused slow restores of migrated jobs.
+kes  Temp fix to plugin name file_index.
+kes  Bacula backed up and restored a MySQL database.
+13Feb08
+kes  Implement plugin restore.
+kes  Implement parsing of db_driver to give db_type index.
 10Feb08
+kes  First cut of plugin restore code.
 kes  Fix bug #1047, which had a heap overrun when stripping certain paths,
      and do not strip paths on symbolic links.
-kes  Set catalog backup database and user name from values specified on 
+kes  Set catalog backup database and user name from values specified on
      the ./configure line.
-ebl  Apply patch to correct bug #1031, about wrong pool source information
-     in job report.
+ebl  Fix #1031 about wrong pool source information in job report.
+09Feb08
+kes  Fix Win32 build.
+kes  Remove a redundant jcr argument to find_files, match_files, and
+     find_one_file.
+kes  Implement '.status dir header|scheduled|running|terminated' that
+     prints the requested status section. With the exception of the
+     header, the other reports have fields separated by tabs (\t).
+08Feb08
+kes  Apply patch from Peter Much <pmc@citylink.dinoex.sub.org> that fixes
+     a resource embedded run command to find a since time if no explicit
+     since time was supplied on the command line.
+kes  Apply state-file.patch sent by Allan Black <Allan.Black@btconnect.com>
+     that updates the state file at job termination time in addition to
+     when the daemon terminates.
+05Feb08
+kes  First version where a plugin did a backup.
+     bpipe-fd.so created a backup file, wrote a test
+     string to it, and Bacua could restore this fabricated file.
+02Feb08
+kes  Implement DB Driver = string for the DBI driver.
+kes  Remove all old bdb_xxx.c code.  Add dummy routines to bdb.c
+kes  First cut of code for loading Win32 plugin dlls. Implement
+     dlopen, dlsym, dlclose, and dlerror in src/win32/compat/compat.cpp
+     and implement a dlfcn.h file based on opengroup's definitions of
+     the functions.
+01Feb08
+kes  First cut plugin directives.
+30Jan08
+kes  Apply patch from bug #1049 to prevent stripping the path on a
+     symlink.
+kes  Attempt to fix bug #1047 where stripping a path corrupts the
+     heap. Waiting for feedback.
+kes  Correct the Mount message not to suggest labeling a new tape
+     when doing a restore.  Submitted by email by John Stoffel.
+kes  Attempt to work around gcc FORTIFY_SOURCE bug that crashes the 
+     FD by using casting. Reported in bug #1042.
+28Jan08
+kes  A bit of crypto cleanup.  More later.
 
 Release Version 2.2.8
 25Jan08
@@ -354,21 +871,42 @@ kes  Apply patch from Martin to correct bug #1040, bscan sets existing
      ClientId to zero.
 kes  Fixed important spelling error in doc -- bug #1045.
 23Jan08
+ebl  Fix bextract to be able to extract non-portable Win32 data to 
+     Unix/Linux clients
 kes  Move initialization of read/write res lock earlier in the code.
      This fixes the crash with a null conf file. This fixes bug
      #1030.
 kes  Redefine CURES in lib/parse_conf to be URES and move it all
      into lib/parse_conf.c -- this responds to bug #1042, but does
      not fix it. The fix is not to compile with FORTIFY_SOURCE.
-kes  Backport fix de-referencing a NULL pointer in the scanner from
+kes  Backport to 2.2.8 fix de-referencing a NULL pointer in the scanner from
      the trunk SVN. I don't think this was reported as a bug.
-
-Beta release Version 2.2.8
-09Jan08
-kes  Re-enable the new job code editing (%f).
+17Jan08
+ebl  Fix a bug during tape initialization with MTSETDRVBUFFER.
+12Jan08
+kes  Fix Win32 build with new .def files and DLL_IMP_EXP ...
+10Jan08
+kes  Add DataDespooling and DataCommitting status (committing is
+     the last despooling).
+kes  Finish implementation of new reservations code noted below.
 08Jan08
 kes  Fix bsnprintf for float point numbers. I broke recently when
-     parameterizing some variables.
+     parameterizing some variables. This fixes bug #1036.
+kes  Undo recent reservations changes ... will apply them later
+     when they work better.
+06Jan08
+ebl  Fixes #1034 which cause mysql to hang the connection after 8h
+ebl  Change default statistics target of filename.name and path.path
+     fields for PostgreSQL. This speeds lookup by indexes. Thanks
+     to Marc Cousin.
+kes  A few more tweaks to new reservation code. Make sure to clear
+     vol released flag when retaking volume. When reading label and
+     label is bad mark volume unused. When recycling, mark volume
+     unused so it can be renamed.
+05Jan08
+kes  Fix reserve_volume() so it doesn't release a volume in use
+     (i.e. a volume entry not marked released). This should be
+     the last part needed to fix bug #1018.
 03Jan08
 kes  Move Heartbeat documentation from Job to Director resource.
      This fixes bug #1033.
@@ -376,22 +914,32 @@ kes  Move Heartbeat documentation from Job to Director resource.
 kes  Fix existing switch drive SD code to call autochanger to release
      any old volume. This must be done to keep the autochanger from
      releasing subsequently newly reserved volumes in doing a close().
-     This should possibly fix bugs #1032 and #1018.
-kes  Apply big backport of current SVN SD code that corrects a number
-     of race conditions. This is a first step in fixing bug #1018.
+     This should fix bug #1018.
+kes  Fail if attempting to get console input in batch mode. This
+     should help fail RunScript console commands that are incomplete.
+kes  First cut implementing switch_drive() in SD (not actually called).
+31Dec07
+kes  Implement first cut running console commands in a RunScript.
 29Dec07
 ebl  Fixes bug #1028 where 'Selection Type' option was not usable 
      with JobDefs.
-
+ebl  Fixes bug #897 and bug #1005 where bacula doesn't display runscript
+     output in error.
 
 Release Version 2.2.7
 24Dec07
-kes  Partial back out (disabled) %f job code editing because it
-     does not build on Win32.
+kes  Add new free_tls() entry point so that Win32 builds.
+kes  Fix compile warning in src/lib/util.c
+kes  Fix entry point for edit_job_codes() so that Win32 builds.
 kes  Fix seg fault Frank Sweetser reports in regression testing
      on his systems. The problem was that the original author of
      bsnprintf.c did not take into account the side effects of
      using ++x in the argument to a #define.
+kes  Make SD protocol backward compatible with version 2.2.x.
+19Dec07
+ebl  Fixes bug #1015 where bacula failed to restore acl to a socket
+     because Bacula no longer restores sockets.
+ebl  Always use ignorecase fileset option on win32 FD.
 14Dec07
 kes  Apply patch from  Michael Stapelberg <michael@stapelberg.de>
      that implements double quoting include names in conf files,
@@ -404,14 +952,16 @@ kes  Skip leading | when lex input comes from a pipe as suggested
 13Dec07
 kes  Apply patch for bsmtp Win32 daylight savings time fix supplied by
      Nerijus Baliunas <nerijus@users.sourceforge.net>
+12Dec07
+kes  Implement Plugin Directory and plugin events.
+11Dec07
+kes  Implement a security enhancement: TLS authentication but no       
+     encryption. Enabled by setting 'TLS Authentication = yes'.
+     Note when this is on, TLS encryption is turned OFF!
 10Dec07
 kes  This patch corrects a problem where the maximum concurrent storage
      jobs counter gets out of sync during restore jobs causing jobs to
      'wait on max Storage jobs'.  This patch fixes bug #1009.
-08Dec07
-kes  Add new include to postgresql.c suggested by Marc Cousins so
-     that it compiles correctly with pgre version 8.3.  Also fix
-     misuse of %x with pointer (should be %p).
 03Dec07
 kes  This patch fixes bcopy so that it produces correct Volumes.
      It fixes bug #1022.
@@ -421,22 +971,22 @@ kes  This patch eliminates spurious output to the console during a VerifyVolume
 kes  This patch prevents the 'status dir' command from trying to use a scratch
      volume and possibly moving it from one pool to another.  This patch fixes
      bug #1019.
+01Dec07
+kes  Add new include to postgresql.c suggested by Marc Cousins so
+     that it compiles correctly with pgre version 8.3.
 30Nov07
 kes  Fix --archivedir addition to configure. Replace it with
-     --with-archivedir in configure.in  This fixes the regression
+     --with-archivedir in configure.in  This fixes the regression       
      test builds.
 kes  This patch fixes bug #1012 where the job is canceled because
-     of Max Run Time exceeded when the job has not yet started.
+      of Max Run Time exceeded when the job has not yet started.
 29Nov07
-ebl  Apply Richard Mortimer patch that fixes #1016 when there are more than
-     one 'part' to write.  Instead of each part being stored on disk,
+ebl  Apply Richard Mortimer patch that fixes #1016 when there are more than 
+     one 'part' to write.  Instead of each part being stored on disk, 
      written to DVD, then deleted from disk, all parts are written to disk,
      and only the last is written and deleted from disk.
-27Nov07
-kes  Correct typos in disk-changer.in
-25Nov07
 kes  This patch fixes the status command to include the formating string for
-     JS_AttrInserting.  It fixes bug #1021.
+     JS_AttrInsterting.  It fixes bug #1021.
 kes  This patch should fix the Mac OS X build problem on the latest
      Darwin, where sys/types.h was not included correctly (apparently
      due to a change in the Mac headers).  The solution was to explicitly
@@ -444,7 +994,7 @@ kes  This patch should fix the Mac OS X build problem on the latest
      This patch also has a rebuild of configure that includes the Debian
      qt4 patch to check for qmake-qt4. This patch fixes bug #1020.
 kes  This patch should ensure that queued messages to the console are
-     displayed as soon as possible.  It should fix bug #1007, but has been
+     displayed as soon as possible.  It should fix bug 1007, but has been
      reported not to work.
 14Nov07
 kes  This patch fixes the infinite loop when trying to increase the
@@ -453,73 +1003,93 @@ kes  This patch fixes the infinite loop when trying to increase the
 
 Release Version 2.2.6
 09Nov07
-kes  Get fix for joblist bug in bat from trunk.
+db   Remove extra data on estimate command in joblist for bat.
 04Nov07
+kes  Cleanup of code in SD that sets the LastWritten date. This doesn't 
+     really change anything, but is the beginning of doing it *right*.
+     To do it completely right the LastWritten date must be passed to
+     the SD, but it is not yet done.
+kes  Minor tweaks to some bat restore SQL.
 kes  This patch fixes bug #1003 where putting the message output from
      a Verify job into the catalog results in a recursive loop.  The problem
      seems to show up only with postgresql (to be verified).
+kes  Correct %x to %p in postgresql debug statement.
 02Nov07
 kes  Fix bug #942 where lots of emails where generated when the heartbeat
      interval was low and Bacula wanted a different tape from the one in
      the drive.
-26Oct07
-ebl  Apply 2.2.5-lastwritten.patch to fix the LastWritten field 
-     which was updated during a restore (or a reading migration) bug #982
+25Oct07
+ebl  Add new SD despooling attributes and Dir inserting attributes 
+     job status codes in the catalog (Status table).
 24Oct07
-ebl  Use qmake-qt4 instead of qmake when available (debian system). 
+ebl  Use qmake-qt4 instead of qmake when available (debian system).
 22Oct07
 kes  Add a security warning to src/cats/make_catalog_backup.in indicating
      that passing the password via the command line (arg 3) is insecure.
      This responds to bug #990 (it doesn't fix it).
-kes  Apply 2.2.5-postgresql-errors.patch
-kes  Remove unneeded File table index on JobId, which is already
-     present as the first index of another multi-index.
 19Oct07
 kes  Set default debug_level to zero. This corrects bugs #991 and #993. 
 kes  Fix a crash in bat when it cannot connect to the Director for example
      if the Director is not running.
+kes  Remove redundant INDEX (JobId) from File table in the trunk.
+     This fixes bug #992.
+kes  Make explicit exception to GPL in LICENSE to permit linking
+     the Win32 FD with Microsoft VSS code.
+kes  Apply the Solaris package patch from 
+     Masopust, Christian <christian.masopust@siemens.com>
+kes  Apply the patch to optionally add a timestamp in the debug output
+     submitted by Mariusz Czulada <manieq@wp.eu>.
+18Oct07
+ebl  Use PQerrorMessage instead of PQresultErrorMessage in postgresql
+     backend (sql_strerror). Fixes bug #989
 16Oct07
+kes  Apply Michael Short's <mdshort@gmail.com> Win32 regress patch.
+     It applied with no problems.
+kes  Add PATH command to SunOS part of mtx-changer.in so that sed and
+     awk are on the path.  
+kes  Redirect stderror to stdin on mt status command in mtx-changer.in
+     since the status is returned on stderr on Solaris.              
 kes  Activate Close button on tray-monitor window. This fixes
      bug #986.
+kes  Check for NULL item in parse_conf.c before calling it.  In the
+     case of Device, there is no item and this caused a seg fault when
+     Device appears in the conf file.
+kes  Add a #define __CONFIG_H when including config.h in bacula.h. This
+     avoids pulling in config.h multiple times in some new code.
 12Oct07
 kes  Fix spurious warning message printed when creating a volume with
      a LabelFormat. This fixes bug #976.
 
 Release Version 2.2.5
 09Oct07
-kes  Add JobId in place of Job name in all the Jmsg() output.  
+kes  Add JobId in place of Job name in all the Jmsg() output.
 kes  Correct the APP_DESC for the Win32 storage service (remove an e).
+07Oct07
+kes  Make maxvol-test and new more strict maxvol2-test work. 
+kes  Print JobId in all Jmsg() job output.
 06Oct07
 kes  Add new SD despooling attributes and Dir inserting attributes 
-     job status codes.  This fixes bug #961.
+     job status codes.  This fixes bug 961.
 kes  Fix Win32 drive display in bat version browser. Fixes bug #962.
 05Oct07
 kes  Fix doc issue. This fixes bug #963.
 kes  Fix listing performance problems in bat. Pointed out by 
      Chris Howells.
-ebl  Fix replace on restore. This fixes bug #969
+kes  Remove old debug code.
 kes  Fix bat code that tests for Win32. This should fix bug #968
 kes  Query 5 list wrong Vol after migration. This fixes bug #960
-04Oct07 
-kes  Correct lib/Makefile.in to include enh_fnmatch.o that was removed
-     in back porting from 2.3.x
-03Oct07
-kes  Backport almost 4000 lines of 2.3 code that fixes a number of bugs.
-     The details are included in the notes in this file.
-28Sep07
-kes  Backport 2.3 code that fixes: it fixes incorrect or incomplete error
-     messages; it fixes a problem opening the SQLite3 database when multiple
-     simultaneous jobs were running; it fixes a bug with certain versions of
-     MySQL where batch inserts failed because of table name character case
-     (upper/lower) differences.
-kes  Fix race condition that drops final block written to volume.
-     This happens in rare cases with multiple simultaneous jobs 
-     when the Volume fills.  This fixes bug #964.  May be related
-     to bug #935 and possibly #903.
-27Sep07 
-kes  Fix FD->SD authorization failure, which was due to spurious
-     wakeups from a pthread_cond_timedwait().  Simply check the
-     predicate before continuing.  This fixes bug #953
+04Oct07
+ebl  Fix #969 where user can't change Replace option in restore menu.
+5ASep07
+kes  Save jcr in thread specific data (tsd) for each thread.
+kes  Make Dmsg() print JobId as -%u.
+kes  Make Jmsg, Emsg, and others automatically pickup the jobid
+     for the thread if it exists.
+kes  Remove old reservation debug jid code.
+kes  Remove get_jcr_from_tid() from OpenSSL and tls code.
+ebl  Add an option that permit to specify spool size in job
+     definition. (Applying patches/testing/spoolsize_per_job.patch).
+     You must upgrade SD and DIR at the same time.
 dvl  Add new configuration item --archivedir
 dvl  Adjust regression tests to use tmp not /tmp.  This will allow
      multiple concurrent runs of the regression tests.
@@ -531,11 +1101,15 @@ kes  Fix race condition that drops final block written to volume.
 kes  Eliminate more strerror() and replace with bstrerror().
 kes  Remove BSD getopt and replace with unrestricted IBM version.
 kes  Fix Win32 build for changed calling sequences.
+kes  More tweaks to the mount volume routines to get everything
+     right. Changed variable name from find to have_vol, which is
+     much easier to understand.
+kes  Enhance btimer debug code.
 27Sep07 
 kes  Fix FD->SD authorization failure, which was due to spurious
      wakeups from a pthread_cond_timedwait().  Simply check the
      predicate before continuing.  This fixes bug #953.
-kes  Add const char where needed (more to do).
+kes  Add const char where needed (more to do). Remove temp debug code.
 26Sep07
 kes  Setup SQLite busy handler before doing queries. Fixes bug #967.
 kes  Don't overwrite error message in check_tables_version.
@@ -547,33 +1121,69 @@ kes  Add retry for SQLite opening db if it fails. Probably helps
      for bug #967.
 kes  Suppress extra error messages during batch insert failure.
      Fixes bug #966.
+kes  Add jcr to timer packets so if killed message can be sent to job.
+kes  Add JobId to all Dmsg() output.
 kes  Put some FD auth code on dbglvl rather than fixed.
 kes  Return insert attributes error message in db msg buffer to avoid
      false error messages. Helps fix bug #966.
 kes  Separate batch init error messages. Probably helps fix bug #966.
+kes  Make SD code that contructs attribute insert check string lengths
+     more carefully.
 kes  If Dir gets an error during inserting attributes, cancel SD.  
      This reduces unnecessary error messages.
 24Sep07 
+kes  Correct search boolean for getting Volume info
 ebl  Cleanup batch insert code. Probably fixes bug #965.
+kes  Back out one small change to the reservation system (reserving a volume).
+kes  Rework how a Volume is mounted. It is now much more intelligent and
+     will always attempt to use any mounted volume if possible and reduces
+     calls to the Director asking about volumes.
 23Sep07 
 kes  Turn off some code when batch insert not enabled.
 kes  Edit FD name in connect error messages.
-22Sep07
+kes  Rework the reservation system to take into account that the Director
+     might give us a Volume that is different from the current one being
+     used, and to ensure that we don't exceed Maximum Volume Jobs.
+     This fixes (mostly) bug #947 '  Maximum Volume Jobs = 1 produces 
+     fatal error with multiple jobs running'
+kes  Add more debug code in reservation system.
+kes  Implement maxvol-test to check bug #947.
+22Sep07 
 kes  Add code to handle tray monitor separated from Win32 FD.
 kes  Fix display of Win32 tray monitor after reboot. Fixes bug #952.
 20Sep07
-kes  Fix ANSI tape labeling.  This fixes bug #954.
+kes  Add missed return in fixing verify bug -- trunk only.
+ebl  Fix a command parser issue causing a director segfault.
+kes  Fix ANSI tape labeling. Fix restoring ANSI labeled Volumes. 
+     This fixes bug #954.
 kes  Increase the max block size to 4MB fixes bug #957.
-kes  Apply 2.2.4-poll-mount fix, that resolves bug #908 where a tape 
+kes  ERABT if user sets min block size > max block size.  Fixes bug #956.
+kes  Apply 2.2.4-poll-mount fix, that resolves bug #908 where a tape
      is not properly mounted (recognized) during a poll.
-kes  Apply 2.2.4-verify patch that resolves bug #958.  A Verify catalog 
+kes  Apply 2.2.4-verify patch that resolves bug #958.  A Verify catalog
      Job that has differences reports Verify OK.
+ebl  Fixes #955 bug seg fault in Dir introduced  with regexwhere relocation.
+17Sep07
+ebl  Add an option to operate on all pools with update vol parameters.
+     This complete the project 20. Patch from Nigel Stepp.
+ebl  Add history support to bconsole when using readline.
+     Using Ctrl-D to exit doesn't update .bconsole_history
+kes  Modify new volume algorithm to use max MediaId for generating next
+     volume number rather than the count of Volumes. This should essentially
+     eliminate the failure rate if some volumes were deleted. Bug #921.
+kes  Begin implemention of Optimize Job Scheduling.
+kes  Implement restore callback that Dirk and I agreed on for bat 
+     restore. This fixes bug #928. Restore of backup of zero files fails.
+kes  Fix SQL Catalog logging which broke with new db_escape_string 
+     calling sequence.
 
 Release Version 2.2.4
 14Sep07
+kes  Fix bacula_cats.def for new db_escape_string().
 kes  Increase size of name string when FD making connection to SD.
-     May fix bug #953.
+     May fix bug #953. FD->SD connection failure.
 13Sep07
+kes  Add code to help Dan debug 2drive-incremental-2disk test.
 kes  Add code to try to fix bug #908.
 kes  Add waits to multiple exit detection code to try to force pid
      file to always be deleted.
@@ -584,6 +1194,7 @@ kes  Fix seg fault in error exit of acquire_for_read after unsuccessfully
      Fixes bug #906.
 kes  Cancel storage daemon in all cases where FD reports error. This
      should fix virtually all cases of bug #920.
+kes  Fix db_escape_string() for MySQL which did not compile.
 12Sep07
 kes  Fix error message that was clobbered when Dir tells SD it does not
      have write permission on Volume.  This should fix a minor point
@@ -591,6 +1202,8 @@ kes  Fix error message that was clobbered when Dir tells SD it does not
 kes  Add code to cancel job in SD if FD connection fails. This should
      fix bug #920.
 kes  Add code in FD exit to prevent loops and a crash on FreeBSD.
+dvl  Pass jcr and db into db_escape_string() to enable better escaping
+     of strings
 kes  Fix migration code to get correct Volume name with multiple volumes 
      by skipping |.  Fixes bug #936.
 kes  Implement patch supplied by Landon to fix bug #944 where using
@@ -604,34 +1217,47 @@ ebl  Fix bug #946 about 'bacula-dir -t' which doesn't works
 09Sep07 
 ebl  Using 'm' in bconsole will show messages like before,
      and not memory usage.
-
-Release Version 2.2.3
-kes  Note, you need GTK >= 2.10 to be able to link the Tray Monitor
-     program.
-09Sep07
 kes  Fix bug #935, and probably also bug #903 where files were not
-     restored. MediaId was not properly set in JobMedia record after 
+     restored. MediaId was not properly set in JobMedia record after
      a Volume change.
+08Sep07
+kes  Suppress chown and chmod error messages if the FD is not running
+     as root.
 07Sep07
-kes  Add ./configure search in qwt-qt4 for qwt package
-kes  Apply Martin Simmons patch that should turn off the new API usage
+kes  Apply Martin Simmons' patch that should turn off the new API usage
      when batch insert is turned off allowing building on older
      PostgreSQLs.
-
-Release Version 2.2.2
+kes  Add ./configure search in qwt-qt4 for qwt package
+05Sep07
+kes  Bacula is now free of 3rd party GPL copyrighted code!
+kes  Remove idcache.c 
+kes  Add guid_to_name.c/h which replace idcache.
+kes  Remove enh_fnmatch.c.  Make code that references it use fnmatch.c
 04Sep07
 ebl  Detect if new PosgreSQL batch insert API is present.
-kes  Correct incorrect mempool call causing Director crash.
+kes  Correct incorrect mempool call causing Director crash. Occurs on
+     systems without va_copy().
 sb   Update spec files for 2.2.1 release
+03Sep07
+kes  Fix memory pool call in ua_output.c. bug #934.
+kes  Replace fnmatch.c and fnmatch.h by modified BSD versions.
+     Add test program to fnmatch.c
+02Sep07
+kes  Integrate patch to README.vc8 from 
+     Hederer Jean-Sébastien <hedererjs@asperience.fr, had to manually
+     edit it to get it into Unix patch format.
+kes  Implement mkpath.c to replace old FSF makepath.c
+01Sep07
+kes  Implement savecwd.h and savecwd.c. Remove FSF versions.
 
 Release Version 2.2.1
 30Aug07
 kes  Update POTFILES.in
-kes  Cleanup a few underquoted AC_DEFUNs in configure
+kes  Cleanup a few underquoted AC_DEFUNs in configure   
 kes  Apply patch from Martin Simmons that adds a test for va_copy to
      ./configure
 29Aug07
-kes  Fix bug 921 by increasing the number of tries to create a new volume
+kes  Fix bug #921 by increasing the number of tries to create a new volume
      from 11 to 100.
 kes  Rework bmsg in ua_output to use va_copy() so that bvsnprintf()
      can be called multiple times.  Implement a version for machines
@@ -757,7 +1383,7 @@ kes  Modify find_next_volume() to return all values in Media record.
 kes  Ensure that we keep Recycle Pool when moving Scratch volumes.
 
 Release 2.1.28 beta
-18Jul08
+18Jul07
 kes  Update Release notes 
 17Jul07
 ebl  fix a bug in get_scratch_volume() report by Andreas Helmcke
@@ -896,7 +1522,6 @@ kes  Don't print clock skew message in FD if less than 3 seconds diff.
 kes  Add a bit of VSS info to status client.
 kes  Implement a first cut of Vista VSS, using Win2003 code.
 
-
 Release: 2.1.20 beta
 20Jun07
 kes  Fixed bug #886 (multidrive autochanger: SD doesn't use drive with
@@ -966,7 +1591,7 @@ kes  Apply patch from user brettedgar that allows gnome2-console include
      the OpenSSL libraries, and hence work with SSL.  Fixes bug #885.
 kes  Apply patch from Lucien Weller that fixes day of week calculation
      because of DST flag problem. Fixes bug #887.
-10Jun08
+10Jun07
 kes  Move find_next_appendable_volume() to after acquiring a valid device
      in reserve.c.  This fixes bug #864 -- confirmed by reporter.
 09Jun07
@@ -1104,11 +1729,13 @@ kes  Implement auto display of messages in bat.
 kes  Enhanced preferences to allow all Bacula output to be
      displayed in bat.
 15May07
+kes  Try to make bsmtp date routines more generic.
 kes  Fixed bug #856 autochanger documentation.
 kes  Rework bsmtp date editing for Win32. This fixes bug #854.
 kes  Add new cats entry point so Win32 builds.
 14May07 
 kes  Attempt to fix bsmtp date editing on OSes without %z editing. 
+     Fixes bug #854.
 kes  Do better checking for the MySQL 64 bit libraries looking for both
      .a and .so libraries.
 kes  Add a kludge for Ubuntu's non-standard locations for MySQL -- allow
@@ -1158,8 +1785,11 @@ kes  If SD is waiting for FD to connect during cancel, wake up the
 kes  Fix fsf code so that errno is correctly reported.
 kes  Apply migration patch (with changes) from Sergey Svishchev <svs@ropnet.ru>
 08May07
+kes  Make lack of Pool directive in Job an ERROR_TERM rather than FATAL
+     so that Bacula doesn't later stumble into a seg fault.
+kes  Use the term Restore Client in the restore Job report.
 kes  Merge patch from Sergey Svishchev <svs@ropnet.ru> that preserves 
-     the original jobb's FileSetId.
+     the original job's FileSetId.
 kes  Merge patch from Sergey Svishchev <svs@ropnet.ru> that implements
      spooling in migration jobs.  Not yet tested.
 kes  Merge patch from Jorj Bauer <jorj@seas.upenn.edu> that implements
@@ -1176,7 +1806,7 @@ kes  Invert Cancel OK buttons on restore to be OK Cancel.
 kes  More strerror() to bstrerror() conversions.
 06May07 
 kes  Start implementing bstrerror() in place of strerror().
-kes  First cut at stripping path -- seems to work.
+kes  Stripping path -- seems to work.
 04May07
 kes  Prevent door and port files from being restored (mostly
      Solaris stuff).
@@ -1203,7 +1833,7 @@ kes  Simplify a few of the alternative returns in the signature
 02May07
 ebl  Use only POSIX regex instead of GNU regex in breg.c for
      File relocation. It fix broken freebsd compilation.
-kes  Convert all other Dir files to use ne ua class message 
+kes  Convert all other Dir files to use new ua class message 
      routines for bat.
 kes  Tentative fix for missing digest signature in bug 807.
 kes  Correct handle problem in new win32_ftruncate routine.
@@ -1532,7 +2162,7 @@ ebl  add update volume=xxx recyclepool=yyyy
 kes  Fix encryption deblocking bug, which caused some restored files
      to be truncated. This fixes bug #763.
 kes  Add FD event sequence order prepared by Eric -- for RunScripts.
-kes  Fix 12am/pm bug as reported in bug #782.
+kes  Fix 12am/pm bug as reported in bug #782 -- scheduler problem.
 13Feb07
 kes  Apply Eric's ClientRunScriptAfter patch to 2.0 and 2.1.
 ebl  Use btime_t instead of uint64_t in media patch.
@@ -1667,3 +2297,4 @@ kes  Add code to indicate when the SD is spooling, spool wait, and
      despooling as requested by Alan Brown.
 
 Version 2.0.0 released: 4 January 2007
+
index 5a84df3a037082858176d0679a2fb4fe744d9c95..6c2031f45957717e8e7a4205c42a0b673e3b9ddf 100644 (file)
 
-       Release Notes for Bacula 2.4.0
+       Release Notes for Bacula 2.5.16
 
-  Bacula code: Total files = 500 Total lines = 188,654 (*.h *.c *.in)
+  Bacula code: Total files = 517 Total lines = 199,415 (*.h *.c *.in)
 
 This Director and Storage daemon must be upgraded at the same time,
-but they should be compatible with all 2.0.x File daemons, unless you
+but they should be compatible with all 2.4.x File daemons, unless you
 use some of the new features that affect the FD.  In other words, you should
 not have to upgrade all your File daemons when you upgrade. There is
-no database upgrade needed from version 2.0.x to 2.2.0 nor from version
-2.2.x to version 2.4.0
+no database upgrade needed from version 2.4.x.  However, the next
+BETA release will require a database upgrade.
 
 ==================   Warning !!!!!! ==========================
-As of Version 2.4.0, the Win32 FD should not descend into 
-any reparse point directory or reparse mount points unless the  
-specified directory is explicitly mentioned at the top level of   
-FileSet (as with Unix). A file that is linked to another file will
-be backed up, much like Unix hardlinked files.  If you want 
-reparse directories backed up, you must explicitly include them
-in your FileSet.
+This BETA release of Bacula 2.5.x development code uses libtool
+to generate the Bacula libraries as shared objects rather than
+being directly linked in as in prior versions.  This means that
+the Bacula shared objects, must either be in a shared object 
+directory known to the loader or they must be in the directory
+that may be specified on the ./configure line using the
+--libdir option as:
+
+  ./configure --libdir=/full-path/dir
+
+the default /lib. If --libdir is specified, there should be
+no need to modify your loader configuration provided that
+the shared objects are installed in that directory (Bacula
+does this with the make install command). The shared objects 
+that Bacula references are:
+
+libbaccfg.so
+libbacfind.so
+libbacpy.so
+libbac.so
+
+If you have problems with libtool or you wish to use the old 
+way of building static libraries, you can do so by disabling 
+libtool on the configure command line with:
+
+  ./configure --disable-libtool
 ==============================================================
 
-This release consists mainly of a number of bug fixes since 2.2.x
-but most importantly, a rewrite of significant portions of the 
-Storage daemon reservation and autochanger code. This rewritten
-code is simpler, more stable, and works much better, particularly
-with multiple drive autochangers than the prior code did.  That 
-said, there are still a number of issues to be resolved. Note,
-the new code has not been tested in manual volume mount situations.
-
-Bugs fixed:
- 1095, 1086, 1091, 1070, 1041, 1083, 1078, 1066, 1068, 1038
- 1062, 1065, 1046, 1047, 1031
-
-New features:
-- You can now build bat without the QWT libraries. Use
-  --without-qwt as a ./configure option. 
-
-Release Version 2.4.0
-- Update version to 2.4.0 to reflect the magnitude of the SD changes.
-- Make sure to clear JS_WaitMedia when operator mounts a Volume.
-  This fixes bug #1095.
-- Add create_postgresql_database.sql to Win32 installer. Should 
-  fix problem reported by Juilio Monteiro.
-- Get correct slot when auto unloading a device. This fixes bug
-  #1086.
-- Fix possible seg fault if SQL error.
-- Fix renaming a Volume, which used the wrong Volume name. 
-- If operator has rewind tape, print warning, release tape and
-  try once more. If tape is positioned somewhere, something went
-  wrong, so mark the tape in error and try once more. Previously
-  this error was fatal, now it produces an error message.
-- Ensure correct volume name displayed during restore
-- Fix a few more Coverity reported problems.
-- Fix #1091 about bad output in estimate command.
-- Modify autochanger locking to attempt to avoid race
-  conditions.
-- Make sure device not busy before doing label command.
-- Display open() errors except when polling. Previously too
-  many were suppressed.  This should fix bug #1070.
-- Fix Win32 reparse points. Bacula will not recurse into any
-  reparse point directory, including mount points, unless the
-  directory is explicitly mentioned at the top level (same as
-  with Unix).  A file that is linked to another file will be
-  backed up -- much as Unix does for hardlinked files.
-  This fixes bug #1041.
-- Remove StorageId test when pruning and recycling (Eric's changes).
-- Fix buffer overruns detected by Coverity.
-- Implement --without-qwt
-- Fix layout of restore tree dialog
-- Add configure bat QWT libraries, so that bat can be built
-  with or without the QWT libaries.
-- Implement regression that explicitly tests swapping a Volume
-  from one drive to another.
-- Enhance disk-changer to detect most error conditions.
-- Fix SD code so that it properly swaps a Volume between drives.
-  This fixes bug #1083.
-- Prevent a Volume that is being swapped from being freed from
-  the volume list. This will most likely fix, at least partially,
-  bug #1083.
-- Fix strippath so that it does not get a buffer overrun and crash FD.
-  This fixes bug #1078.
-- Make inability to change owner/group when creating a dir only a
-  warning rather than an error.
-- Fix SQL query in migration code
-- Fix bat seg fault at termination.
-- Add Bacula generated version to bat about box.
-- Backport development stream SD reservation system changes.
-- When wrong volume is mounted during read, unload_autochanger.
-- Stop searching for Volumes in SD askdir if DIR returns the
-  same volume name twice in a row.
-- Rework class structures for VOLRES, DCR, and DEVICE to make
-  the method names a bit more logical, and for more logically
-  handling the responsibilities.
-- Remove redundant code in terminating the scheduler that just
-  causes a seg fault in many cases.
-- Improve algorithm for detecting pre-reserved volume and
-  swapping volumes.
-- Prevent volume from being released while being swapped.
-- Refactor parts of stored/mount.c
-- Add sanity checks for VolWriteTime and VolReadTime
-- Take care of bad clock changes while computing VolWriteTime
-  and VolReadTime. This should fix or limit #1066
-- Correct error string numbers in dird/catreq.c
-- Restructure reserving, acquiring, and mounting volumes. Calls to
-  autochanger are deferred for mount.c -- simplifes the code.
-- Do not prune any running job. It just fails the job.
-- Lock the volumes when changing dev->reserved_device and marking
-  the volume unused otherwise the device can get reserved by
-  another job before the volume is released, thus blocking it.
-- Correct some SD catalog request error messages.
-- Turn off code in read_record that causes a seg fault in the SD
-  when reading past an EOS_LABEL.
-- Turn off unloading the autochanger in reserve.c as it just
-   causes problems.
-- Lock volumes when unreserving a device.
-- Do not mark volume unused when recycling.
-- Fix bug #1068 fixes a SD crash when using Virtual autochanger.
-- Generate correct JobMedia records during spooling/despooling when
-  running concurrent jobs.  Thanks to Tom Ivar Helbekkmo
-  <tih@hamartun.priv.no> for excellent analysis and testing.
-- *Massive* commit of all fixes and back ports to create 2.2.9
-  Mostly SD reservations enhancements.
-- Fix Win32 FD backup/restore memory leak due to improper termination
-  of BackupRead/Write. This fixes bug# 1038.
-- Fixes a StorageId problem with volumes after migration.
-- Implements autostart scripts for Debian 
-- Fix mtx-changer.in for broken Debian mt program.
-- Apply doc fix from bug #1062.
-- Resolve crash and improper restore wx-console Win32 restore
-  GUI. Fixes bug #1065.
-- Update Win32 wxWidgets to latest version.
-- Attempt to do correct handling of Win32 mount points. Should
-  fix bug #1046.
-- Add const to AIX prototype for initgroups()
-- Fix to the JobMedia patch, which introduced a new problem.
-- Fix creating first JobMedia record during Migration to include
-  proper index. This caused slow restores of migrated jobs.
-- Fix bug #1047, do not strip paths on symbolic links.
-- Set catalog backup database and user name from values specified on 
-  the ./configure line.
-- Apply patch to correct bug #1031, about wrong pool source information
-  in job report.
-
-
-=========================================================================
-
-Version 2.2.8 is a bug fix to version 2.2.7:
-- It fixes bugs: 1036, 1033(doc), 1028, 1040, 1045(doc), 1030,
-  1042(partially), and possibly bugs 1018 and 1032.
-  Bugs 1018 and 1032 involve problems with multiple-drive autochangers,
-  and are difficult to reproduce.   
-  See the ChangeLog for more details.
-
-Version 2.2.7 has several new features and several important bug fixes
-  since version 2.2.6:
-- It fixes bugs: 1009, 1022, 1024, 1019, 1012, 1021, 1020
-  1007, 1008.  For more details, please see the technotes-2.1 file.
-- Fixed a seg fault reported by Frank Sweetser that depended on
-  exact path lengths, but the problem was in bsnprintf.c
-- Double quoting include filenames (@xxx) in Bacula conf files is now
-  possible, thanks to a patch by Michael Stapelberg.
-- You can pipe input to include filenames (@|prog) by using a vertical
-  bar, thanks to the above patch.
-- A daylight savings time bug in the Win32 bsmpt was fixed by a patch from 
-  Nerijus Baliunas.
-- Marc Cousins submitted a patch that permits building the PostgreSQL
-  driver with version 8.3.
-- The configure option --archivedir has been changed to --with-archivedir
-
-Version 2.2.6 is a minor bug fix release to version 2.2.5
-- It fixes bugs: #1003, 942, 982, 990(response only), 991,   
-  993, 986, 976.
-- Fix bat crash wen it cannot connect to Director.
-- Fix joblist failure bug in bat.
-
-Version 2.2.5 is a major bug fix release to version 2.2.4 
-- It fixes the following bugs: #961, 962, 963, 969, 968, 960,
-  964, (possibly 935 and 903), 953, 953, 967, 966, 965, 954, 
-  957, 908, 958, and 955.
-- It also improves listing performance problems in bat pointed
-  out by Chris Howells.
-
-Version 2.2.4 is a minor bug fix release to version 2.2.3
-- Possible fix for authorization problems bug #953.
-- Possible fix for bug #908.
-- Add waits to multiple exit detection code to try to force pid
-  file to always be deleted.
-- Restore good dev.tar.gz to rescue set appropriate binary property.
-  This fixes bug #950.
-- Fix seg fault in error exit of acquire_for_read after unsuccessfully
-  trying to switch drives by checking for blocking before unblocking.
-  Fixes bug #906.
-- Cancel storage daemon in all cases where FD reports error. This
-  should fix virtually all cases of bug #920 and will ensure that Devices
-  are released as soon as possible.
-- Fix error message that was clobbered when Dir tells SD it does not
-  have write permission on Volume.  This should fix a minor point
-  in bug #942, but not the main problem.
-- Fix migration code to get correct Volume name with multiple volumes 
-  by skipping |.  Fixes bug #936.
-- Implement patch supplied by Landon to fix bug #944 where using
-  TLS with bconsole uses 99+% of the CPU.
-- Fix bug #946 about 'bacula-dir -t' which doesn't works
-  as expected.
-- Using 'm' in bconsole will show messages as in prior versions
-  and not memory usage.
-
-- Note, you need GTK >= 2.10 to be able to link the Tray Monitor
-  program.
-
-Version 2.2.3 is a critical bug fix release to version 2.2.2
-- Fix bug #935, and possibly also bug #903 where files were not
-  restored. MediaId was not properly set in JobMedia record after 
-  a Volume change. This bug is known to affect all versions from 
-  2.0.0 on, and probably versions prior to that.  A detailed analysis
-  of the bug can be found at:
-    
-   http://www.bacula.org/downloads/bug-395.txt
-   
-- Add ./configure search in qwt-qt4 for qwt package
-- Apply Martin Simmons patch that should turn off the new API usage
-  when batch insert is turned off allowing building on older
-  PostgreSQLs.
-- Note, you need GTK >= 2.10 to be able to link the Tray Monitor 
-  program.
-
-Version 2.2.2 is a minor bug fix release to 2.2.1
-- Detect if new PosgreSQL batch insert API is present.
-- Correct incorrect mempool call causing Director crash on older
-  systems that do not have va_copy().
-- Update spec files for 2.2.1 release
-
-Version 2.2.1 is mainly a minor bug fix release to version 2.2.0,
-  the main changes since 2.2.0 are:
-- Fixed bugs #921, 930, and 923.
-- More portable timezone offset in bsmtp thaks to Attila Fülöp.
-- Fix several bat issues.                     
-- Use GTK+ calls instead of egg files in tray-monitor.
-- Win32 service routines rewritten
-- Updated projects file
-Please see the ChangeLog for details.
-
-Notes on 2.2.0 release follow:
-
-Areas requiring caution or testing:
-- You must have the thread safe version of MySQL client libraries loaded
-  to build with MySQL enabled.
-- Volumes are pruned only when absolutely necessary -- this may cause
-  your database to grow compared to prior Bacula versions.
-- Solaris door and even port files are no longer restored (equivalent
-    to what we do with sockets).
-- SQLite is no longer supported for Solaris -- it fails too often with
-  bus errors.  SQLite3 should work on Solaris.
-- The default setting for SQLite3 is now 'PRAGMA synchronous=OFF'.
-  This makes it run 30 times faster, but increases the possiblity
-  of a corrupted database if your server shuts down unexpectedly.
-  The default behavior can be changed in src/version.h
-- Restore on Win32, and in particular on Vista is untested. Please
-  test before relying on it.  It should backup and restore reparse
-  points.
-- Win32 servers are untested, and very likely not to work.
-
-The major new features are:
-- Much faster insertion of attributes (somewhere around 10 times),
-  many thanks to Eric Bollengier and Marc Cousin. 
-- First release of bat (Bacula Administration Tool).  Note to build
-  bat you must explicitly enable it on the ./configure line, you
-  must have the Qt4 version 4.2 or later libraries loaded, the qwt
-  (Qt Graphics) package loaded, and qmake and the other Qt4 tools 
-  must be available. Most of the implementation was done by Dirk Bartley.
-- Red/Black restore in memory tree (500 times faster loading).
-- The Regex Where code to allow easier relocation of restored files 
-  thanks to Eric.
-- Socket level heartbeat for all connections (untested).
-- posix_fadvise() use in the FD to improve performance reduces
-  swapping due to opening/reading lots of files. Win32 equivalent
-  implemented.
-- Much improved Volume reservation code that should eliminate most
-  conflicts experienced in multiple drive autochangers.
-- Simpler locking in the SD in the reservation system.
-- Detection of file size/date change during backup if enabled.
-- New Recycle Pool feature -- thanks to Eric.
-- Efficient implementation of very large include/exclude lists.
-- Volumes are no longer pruned during 'status dir'
-- Pruning is now more efficient, and if a Volume is purged,
-  during pruning, it is immediately discovered.
-- License is now GPL v2 without modifications, fix a few copyright
-  mistakes made when adding FSFE copyright notice.
-
-New ./configure options:
-- --enable-bwx-console    
-- --enable-bat
-- --with-qwt=
-- --with-db-name=
-- --with-db-user=
-- --enable-batch-insert
-
-New bconsole commands:
-- exec
-- memory
-- update recyclepool
-- .sql
-- .api
-- .pwd (in restore tree)
-- restoreclient (keyword)
-- backupclient  (keyword)
-- regexwhere    (keyword)
-- update jobid  (new command)
-- recyclepool   (keyword) 
-
-New directives:
-- Heartbeat Interval (bconsole.conf)
-- Heartbeat Interval (bacula-dir.conf in Director, Client, Storage)
-- TLS Allowed CN  (bacula-dir.conf in Client)
-- Regex Where  (bacula-dir.conf in Job)
-- Strip Prefix    (bacula-dir.conf in Job)
-- Add Prefix   (bacula-dir.conf in Job)
-- Add Suffex   (bacula-dir.conf in Job)
-- Recycle Pool    (bacula-dir.conf in Pool)
-- FailJobOnError  (bacula-dir.conf in RunScript)
-- CheckFileChanges   (bacula-dir.conf in FileSet)
-- StripPath    (bacula-dir.conf in FileSet)
-
-Other features or bug fixes:
-- Fixed bugs: 916, 910, 917, 914, 906, 907, 
-  842, 830, 893, 861, 888, 886, 807, 877, 872
-  885, 887, 864, 874, 882, 881, 863, 859, 
-  856, 854, 845, 847, 846, 809, 772, 
-  822, 825, 824, 808, 802, 797, 798, 795, 789, 791, 
-  788, 780, 763, 782, 612, 767, 775, 621, 772, 764, 
-  766, 621, 761, 755, 750, 741, 747, 742, 744, and 743.
-- Configure bat with --enable-bat. Define qwt libraries with
-  --with-qwt=<dir>. See Installation chapter of manual for details.
-- Create a depkgs-qt package that has both Qt4 and qwt, which are
-  needed to build bat. Most modern Linux systems will have both
-  these packages in the distro.
-- Storage overrides delete all previous storage definitions instead
-  of prepending.
-- One should be able to mount and unmount removable devices if the
-  Device resource has Removeable Media set and the mount and unmount
-  directives are defined.
-- ./configure will do a better job of searching for qwt libraries.
-- The Win32 version can no longer be shutdown from the tray monitor.
-  Use the command line or the Services panne.
-- Keep prune_volumes() from pruning the whole Scratch pool.
-- More debug output in status storage.
-- Correct moving a Scratch volume from pool to pool (some
-  critical columns were lost).
-- Different locking in reservations and despooling systems,
-  which means more micro-locking and less macro-locking, which
-  should give a lot more concurrency at the expense of slightly
-  (<0.1%) more overhead due to more locking/unlocking, but  
-  concurrent jobs should run much faster.
-- Additional drive reservation algorithm that should solve a lot of
-  the problems experienced with multiple drive autochangers.
-- Storage daemon status command enhanced to more clearly show Volume,
-  pool and media type when a job is waiting.
-- Made bsmtp work with more strict SMTP servers.
-- Detect doubly freed buffers in smartall.c
-- wx-console renamed to bwx-console (Fedora request)
-- gnome-console renamed to bgnome-console (Fedora request)
-- Migration preserves original job's FileSetId
-- Spooling implemented for migration jobs.
-- Config files can be read through a pipe, by specifying a leading |
-  in front of the configuration path/filename.
-- New memory command (bconsole) that will print the current Director's
-  memory usage, and an in use buffer dump.
-- Console name changed from *Console* to -Console- to accomodate Win32
-  filename restrictions.  
-- Corrected the Win32 ftruncate bug.
-- Additional version information added to Job reports.
-- New -8 option for bsmtp to specify UTF-8 encoding type.
-- bsmtp will no longer add < > to target (from, to, cc) if there
-  is already a < in the target.
-- Prefer Mounted Volumes extended to mean a volume that is being
-  mounted by another job.
-- Runscript timing set to same as version 1.38.11
-- New TLS Allowed CN directive(s) permitted.
-- New bconsole 'exec' command to run external script/command.
-- Turn on FreeBSD/OpenBSD code to set EOT model on tape.
-- Drop from root done before database is opened.
-- Database user and name can be configured with:
-  --with-db-name=name --with-db-user=user
-- Turn on wait_for_drive in mtx-changer script.
-- Rework how bar codes are handled in mtx-changer script.
-  This appears to have been an unreported bug.
-- Updated nagios plugin supplied by Christian Masopust
-- Better restricted console ACL checking.
-- New Client Connect Wait directive in Storage daemon so that
-  users can configure how long SD waits for FD connection.
-- Bacula will no longer permit pruning of the currently running
-  job (note, if other jobs are running, they may be pruned).
-- Sockets are no longer restored.
-- dbcheck works in 300K chunks so will typically run faster.
-- Include/Exclude lists can now be efficiently handled for quite
-  large sizes -- tens of thousands of entries.
-- Several memory leaks in migration and database usage were fixed.
-- New console keyword restoreclient, which specifies the client to
-  which the restore will be sent. The client keyword specifies 
-  the backup client. The restoreclient keyword is optional if it is
-  not specified, the backup client will also be the restore client.
-- The disk file size is now checked to ensure that it agrees with the
-  catalog value before Bacula will append to the disk (same as tape
-  and DVD).
+This release includes large number of new features and changes.
+It should be more or less compatible with previous xx.conf files
+and File daemons providing that you are not using any of the new
+features.
index b9e1cfb7a81e390a1cd0d24971860a03864bc0b2..e1c33af9a224a37a05430d538c5d87caf662df0d 100644 (file)
@@ -19,6 +19,36 @@ libtool
 
 remove reader/writer in FOPTS????
 
+==================   Warning !!!!!! ==========================
+This BETA release of Bacula 2.5.x development code uses libtool
+to generate the Bacula libraries as shared objects rather than
+being directly linked in as in prior versions.  This means that
+the Bacula shared objects, must either be in a shared object 
+directory known to the loader or they must be in the directory
+that may be specified on the ./configure line using the
+--libdir option as:
+
+  ./configure --libdir=/full-path/dir
+
+the default /lib. If --libdir is specified, there should be
+no need to modify your loader configuration provided that
+the shared objects are installed in that directory (Bacula
+does this with the make install command). The shared objects 
+that Bacula references are:
+
+libbaccfg.so
+libbacfind.so
+libbacpy.so
+libbac.so
+
+If you have problems with libtool or you wish to use the old 
+way of building static libraries, you can do so by disabling 
+libtool on the configure command line with:
+
+  ./configure --disable-libtool
+==============================================================
+
+
 General:
 19Oct08
 kes  Add Makefile dependency when using LIBTOOL_LINK so that any