]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/technotes-2.3
kes Add debug code to SD.
[bacula/bacula] / bacula / technotes-2.3
index 5e7add7c1994ffae74097b2fa125d65590d391c6..97af471b50da1242e4f26c54e3eb6e99cb48cdf9 100644 (file)
@@ -1,6 +1,333 @@
               Technical notes on version 2.3
 
               Technical notes on version 2.3
 
+          
+New features:
+Accurate files
+TLS authentication 
+bextract Win32 data
+Run afterVSS
+Multiple command/console per runscript
+console command in runscript
+Bat API
+Plugin API
+State file updated on job term
+PluginOptions
+FD Version
+Duplicate Job directives
+MaxFullInterval
+MaxDiffInterval
+Honor nodump flag
+Improved status commands for Bat
+Spooling/despooling status
+Implement ftruncate for NFS devices
+Add long term statistics job table
+
+
 General:
 General:
+28May08
+kes  Add debug code to SD.
+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
+     wrong, so mark the tape in error and try once more. Previously
+     this error was fatal, now it produces an error message.
+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.
+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. 
+kes  Make sure device not busy before doing label command.
+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
+     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.
+20May08
+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.
+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
+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 faketape
+07May08
+kes  Improve SD reserve debug code.
+kes  Testing an improvement to free up volumes no longer in use.
+03May08
+kes  Rework SD acquire for read to handle autochanger Volume
+     swapping.
+kes  Implement regression that explicitly tests swapping a Volume
+     from one drive to another.
+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  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  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.
+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.
+kes  Resolve several problems with recycling that broke the new
+     code (these problems are in 2.2.9 as well).
+kes  Remove the volume lock when calling the sysop code.   
+kes  Don't mark a reserved volume with no writers as unused otherwise
+     jobs fail.
+12Apr08
+kes  Rework class structures for VOLRES, DCR, and DEVICE to make
+     the method names a bit more logical, and for more logically
+     handling the responsibilities.
+11Apr08
+kes  Remove redundant code in terminating the scheduler that just
+     causes a seg fault in many cases.
+kes  Cleanup releasing a volume and make it a DCR method.
+kes  Improve algorithm for detecting pre-reserved volume and
+     swapping volumes.
+10Apr08
+kes  Tweak volume swapping code so it works.
+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.
+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
+ebl  Take care of bad clock changes while computing VolWriteTime
+     and VolReadTime. This should fix or limit #1066
+kes  Correct error string numbers in dird/catreq.c
+kes  Restructure reserving, acquiring, and mounting volumes. Calls to
+     autochanger are deferred for mount.c -- simplifes the code.
+08Apr08
+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.
+06Apr08
+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. 
+     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 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.
+kes  Add patch supplied in bug #1068 that fixes a SD crash when using
+     a Virtual autochanger.
+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.
+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.
+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 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  Keep Schedule run lists in order as suggested by
+     Bastian Friedrich.
+21Mar08
+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  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.                   
+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.
+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.
 03Mar08
 kes  Implement 'MaxFullInterval' and start 'MaxDiffInterval' based on
      some ideas in patch from Scott Bailey.