]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/technotes-2.3
kes Add debug code to SD.
[bacula/bacula] / bacula / technotes-2.3
index 337aa7824994889397ef70ecdc6af439e63c690d..97af471b50da1242e4f26c54e3eb6e99cb48cdf9 100644 (file)
@@ -1,6 +1,324 @@
               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:
+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