]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/ReleaseNotes
Final changes
[bacula/bacula] / bacula / ReleaseNotes
index 2980b8530b3863a960ef66234b469d1c77042ec8..1aa986dc8a34bcd9c98e825fdd2113ce7c6a503d 100644 (file)
 
-          Release Notes for Bacula 1.32c
+          Release Notes for Bacula 1.35.2
 
-  Bacula code: Total files = 259 Total lines = 77,957 (*.h *.c *.in)
+  Bacula code: Total files = 395 Total lines = 115,062 (*.h *.c *.in)
 
-Most Significant Changes since 1.32b
-- Implemented a RunAfterFailedJob record in the Job resource.
-- Implemented "delete job" command in the Console.
-- Gnome 2.0 console compiles and works. 
-- Implemented VerifyJob record in the Job resource
-  that tells Verify which job to verify (JobId not required) 
-- First cut Verify Disk to Catalog
-- Fix "status dir" to examine all run commands in Schedule.
-- Close unused file descriptors in bpipe.c
-- There is now a patch for FreeBSD 4.8 pthreads that
-  fixes the problems of data loss at the end of a tape.
-  Please see:
-  <bacula-source>/platforms/freebsd/pthreads-fix.txt
+Changes for 1.35.1
+Major Changes:
+- Tray monitor program
+- Bacula Rescue CDROM     
+- General bug fixes/stabilization
+- French translation of manual by Ludovic Strappazon well    
+  underway.
 
-Most Significant Changes since 1.32a:
-- Improve forward space file/block during restore, many
-  optimizations.
-- Fix a Bacula bug that did not allow appending to a tape    
-  on FreeBSD systems.
-- Fix pruning so that it will not prune the current job.
-- Modify configure to use non-threaded MySQL client lib if
-  the threaded version is not present.
-- Implement restore by file before date.
-- When pruning don't prune the current job.
+New Directives:
+- Added Ignore FileSet Changes = yes
 
-Major Changes 1.32a Release:
-- Implemented forward space file/block whenever possible 
-  during restore. Restoring a small number of files is now  
-  much faster.
-- There is a new option to restore that allows you   
-  to restore files based on their Filename. You can
-  also specify a file to read which contains the list.
-- Added ClientRunBeforeJob and ClientRunAfterJob.
-- Implemented Include | and < in File daemon.
-- Automatic labeling of tape Volumes should work now.
-- Recycling has been completely restructured and should work.
-- Implemented full length time interval qualifiers (e.g
-  "5n is now "5 min" or "5 minutes". A modifier is now required!
-- Fixed gnome-console to compile with RH9 (Gnome 2.0)
-- Implemented "list nextvol job=xxx", which displays the
-  next volume to be used by job xxx. The Volume name to
-  be used is also added to the "status dir" output.
-- Lots of fixes with variable expansion and counter variables
-- Implemented a new Include/Exclude syntax.
-- While writing a tape, an end of file mark will be written
-  every 1Gb. This makes restores faster. If you want to
-  change this use "Maximum File Size" in the SD Device
-  resource.
+Items to note!!!
+- All daemons should be compatible with 1.34 with the exception
+  of the new FileSet features such as regular expressions.
+- Regular expressions are not implemented in the Win32 FD.
 
+Other Items:
+- Inhibit printing of FileSet for a restore as it is misleading.
+- Cleaned up a number of minor scripting problems with the CDROM
+  creation.
+- Fixed a race condition causing a Director crash on termination,
+  if a large number of SIGHUPs were sent during a multiple concurrent
+  set of backups.
+- Completed integration of Rescue CD scripts with Bacula source.
+- Added Ignore FileSet Changes = yes
+- Added more error checking to the spooling code.
+- Applied a patch from Peter Eriksson that removes a dynamic stack
+  allocation (replaced by alloca) and fixes some const problems.
+- Fixed a free() of a static variable in the new IP code bnet.c
+- Got the new Bacula Rescue CDROM booting.
+- Replaced a dynamic template by a simple store when using the
+  native C compiler.
+- Reworked some of the block.c error handling.
+- Changed a Dmsgx(000, to Dmsgx(100 in dev.c that was dumping
+  debug output on a user.
+- Integrated patch from 1.34.6 block.c to 1.35
+- Fix conio.c problem on Solaris.
+- Add debug code to lock_jcr_chain().
+- Lock jcr chain around less code.
+- Implement call by reference for Mmsg() and pm_strxxx() to
+  simplify calls.
 
-Other Changes 1.32a Release:
-- Fixed sparse file bug.
-- A warning message is sent when a job starts that will be
-  blocked because the user did an "unmount".
-- Block checksum errors if any are printed in the job report.
-- Implemented a single routine to read_records. It also returns
-  a different record packet for each session.  This means
-  that multiple simultaneous jobs should work.
-- Added SDConnectTimeout to FD.    
-- Lots of doc enhancements
-- Fixed a PurgeOldestVolume bug (VolStatus not returned)
-- Don't crash if DB address record not specified.
-- Return VolStatus on find_next_volume.
-- Use alist for incexe name_list.
-- Use bget_dirmsg() everywhere possible when talking to FD.
-- Delete old semaphore job and workq job scheduling code.
-- edit_run_codes in one place (/lib)  Add Job name
-- Update query.sql to find current backups correctly.
-- Correct ambiguous SQL statement for pruning.
-- Set heartbeat interval to zero by default.
-- Fix a possible race condition in stopping the 
-  heartbeat thread.
-- Eliminate gnome2-console directory. Everything is in gnome-console
-- Enhanced "packet too big" message to indicate who sent it.
-- Corrected console prompt problem in non-readline versions.
-- Correct a number of variable expansion problems.
-- Added a number of new regression tests.
-- In an attempt to make configuration a bit less confusing, I've changed
-  the name of a number of variables. The old ones still work, but will
-  be phased out over time. FDAddress, FDPassword, SDAddress SDPassword,
-  SDDeviceName, and DBPassword.
-- A possible fix to the very intermittent SD crashes that Alex gets.
-              
 
+Release 1.35.1 16 August 2004:
+- Added Tape Alert feature (see Alert Command).
+- New IPv6 code (untested)
+- New way of specifying Addresses and Ports -- permits having
+  server listen on multiple ports.
+- Regular expressions in Options directive.
+- Reader/writer programs in Options (not yet fully implemented,
+  please do not use).
+- Fixed specification of bind address on Win32 (thanks to     
+  Martin Simmons).
+- Update all Volumes from Pool record.
+- Update License to terminate rights of anyone suing a GPL licensor.
+- Improved error messages for Win32 and when running external
+  programs (e.g. RunBeforeJob).
+- Implement reload of conf file in Directory on SIGHUP.
+- Building restore tree is much faster on large filesets
+  due to binary insert.
+- Alert Command in Device resource of Storage Daemon.
+- New IP address and port directives.
+- reader = xxx, writer = yyy in Options within FileSet of
+  Director's conf file.
+- regex = xxx in Options within FileSet of Director's
+  conf file.
+- New command options: update AllFromPool updates all
+  Volumes with Pool defaults.
+- .backups client=xxx (for GUI programs).
+- A duration specification may have any number of integer/modificator
+  specifications. E.g.:
+  1 week 2 days 3 hours 10 mins
+  1 month 2 days 30 sec
+- Print error message if Alert Command fails in bpipe_open().
+- Doc Alert command.
+- Eliminate unnecessary class in findlib/attribs.c
+- Add necessary empty files to new tray-monitor directory.
+- Implement Class with template in findlib/attribs.c to do casting
+  of uint64_t into stat packet types to avoid compiler warnings.
+  Thanks to Meno for this idea.
+- Make some modifications to satisfy VC++.
+- Apply Martin Simmons' second patch to compat.cpp to fix the line
+  I previously missed.
+- Apply Meno's fix to bnet that corrects use of ipaddr after free_addresses,
+  back out my kludges, and it works.
+- Modified configure.in to by default add -Wall.
+- Found some problems with printing IP addresses -- will notify Meno.
+- Added printing Pool to Job report.
+- Fixed several places where dlists were not being released 
+  (term_job_server, ...)
+- Started implementing New() for dlists. Spent a lot of time,
+  but could not get it to work.
+- Fixed a mutex deadlock between the job queue scheduler and the
+  watchdog.
+- Made add_address() static.
+- Added bsnprintf to address_conf.c
+- Apply Marin Simmons patch to inet_aton() in compat.
+- Build on Win32 -- required a few changes because of new IP code.
+- Implement program reader code in Dir and FD -- not tested, and
+  a few corrections for writer code are needed in FD.
+- Rework SQL for pruning. Add Admin pruning. Prune failed
+  jobs in Verify and Restore.
+- Don't put commas in listing produced in restore so that users
+  can cut and past JobIds without having commas in the way.
+- Change size_t to socklen_t in filed.c -- reindent a bit.
+- Remove addr_list->size from buf size definition in bnet.c
+- Create a Developer's document.
+- Add prompt for Update volume from pool and update all 
+  Volumes from pool.
+- Implement user friendly time duration input editing.
+- Add buf len argument to edit_utime().
+- Added eliminate orphaned Client records to dbcheck.
+- Implement Alert Command in SD Device conf. 
+- Fix updating a Volume from the pool record -- it never changed
+  anything.
+- Implement updating all Volumes from pool record.
+- Add patch by Denis Shaposhnikov that fixes excludes of directories
+  in new style FileSets.
+- Merge Meno's IPv6-1 code.
+- Update License to terminate rights of anyone suing a GPL licensor.
+- Add Pruning doc sent by Bryce Denney
+- Correct inconsistencies in restore command doc pointed out by user.
+- Don't edit commas in SQL intergers if they are not stricly integer.
+- Update all pools in all DBs when starting the Director.
+- Implement final cut of berrno and update Win32 code.
+- Update copyright to include a termination clause. Add copyright to
+  binaries.
+- Implement .backups client=xxx for Nicolas.
+- Make first cut at implementing berrno class to handle Unix, Win32
+  and bpipe errors. Bpipe still needs to be implemented.
+  This fixes (not yet tested) the Win32 errno problems in the compat lib.
+- Fix btape compile problem reported by Martin Simmons -- thanks.
+- Add ./configure detection of sys/tape.h
+- Apply two fixes to recent changes to dev.c submitted by
+  Martin Simmons.
+- Add checks in btape for correct size of off_t, and correct editing
+  of 32 and 64 bit values.
+- Move supported OS/hardware into a chapter by itself.
+- Fix bscan, which did not handle walking dcr list.
+- Remove old attach_jcr_to_device() code.
+- Fix config from Andy Wettstein's patch to use bitypes.h and detect
+  uint32_t, ... definitions.
+- Fix a few compiler warnings because of casting pointers to int and
+  vise versa.
+- Do some minor cosmetics to query.sql. nothing changed.
+- Don't call stop_thread_timer() in backup.c if timer not started.
+- Fix bug with out of order JobIds on restore.
+- Make watchdog examine queues once every 10 seconds instead of once
+  a second.
+- Add more bools to dev.c
+- Fix walking attached DCRs in bscan.c
+- Doc updates
+- Start work on rescue files. Integrated RAID changes. 
+- Print a message when query.sql moved to query.sql.old during install.
+- Move setting of FreeBSD chflags() to after utime() to avoid error
+  messages is immutable bit is set.
+- Turn off heartbeat in FD when -s is given so that we can 
+  debug without a flood of signals.
+- Close and reopen the device during an append test in
+  btape. This better tests appending as if Bacula stops/restarts.
+- Remove old attach/detach_jcr_to_device() code
+- Add new attached_dcrs code.
+- Remove unnecessary subroutine for bsnprintf.
+- Replace sprintf() by home-grown code in edit_uint64 ...
+- Begin implementation of dev->attached_dcrs. 
+- Remove scripts/fd.in from configure.in
+- Add printing of JobId when a Job is started from the console.
+- Remove fd/fd.in from scripts directory.
+- Fix a number of bugs in dbcheck concerning the -c option
+  (i.e. with a config file).
+- Made RH start scripts use -u and -g options.
+- Many more DCR changes.
+- Add job message indicating that the job has been rescheduled
+  and when.
+- Fix job end time so that it is always updated. Previously it
+  was not updated when a job was rescheduled.
+- Correct SQL for restoring job by path/name. It could sometimes
+  pickup the wrong JobId -- submitted by a user.
+- Add a number of "%s" in editing database errors -- security issue.
+- Ensure that the NumVols is incremented and decremented in the
+  pool record when Volumes are created or deleted.
+- Cleanup error handling when labeling a tape. If vol was read-only,
+  the device would still be marked as having found a label.
+- Put ftCreationTime into st_ctime of stat packet. Hopefully
+  this will fix the problem of noticing files have been moved
+  into the save path after a Full save.
+- Fix bug in "status dir" where not all entries are listed.
+- Cleanup some improper result printing in configure.
+- Optimize a couple of insertions in binary_insert of dlists.
 
-Items to note:  !!!!!
-- Modifiers (sec, min, hour, day, ...) are now required on conf file
-  time interval specifications.
-- Duplicate names within the same conf resource are prohibited.
-- If you have used a prior BETA version of 1.32, please do
-  the following to cleanup any zero length spool files:
-
-   cd <working-directory-as-in-Bacula-conf>
-   rm -f *.spool.*
-
-  Please be sure there are no spaces between the asterisks
-  and the periods.
+Release 1.35.0 08 July 2004:
+- Apply Christopher Hull's const patch for PostgreSQL
+- Add code to block.c to detect if block header is destroyed.
+- Add debug code for memset checking for zeroing 1900-3000 bytes
+  which is what happened to the block headers.
+- If block header is destroyed, read the next block. Probably
+  should return with new status similar to the SHORT block 
+  return.
+- Add more debug info to bls for bad blocks.
+- More implementation of DCRs.
+- Eliminate argument passing in SD by using dcr.
+- More int->bool conversions.
+- Add file:block to a number of read/write error messages.
+- More int -> bool conversions.
+- Modify the SD piece by piece to use DCRs everywhere.
+- Cleanup some printout for query command. 
+- Fix typo in cats/mysql.c
+- Work on cleaning up tape driver a bit (use bools, better calling
+  sequences).
+- Attempt to fix multi-Volume disk backup. Needs to be tested.
+- Add Regular expressions to FileSet options.
+- Correct configure.in to use ${MAKE} for doing the dependencies.
+- Make MySQL and PostgreSQL try for 30 seconds to connect before
+  giving up.  
+- Correct Gnome 1.4 Makefile to build without cats library.
+- Correct a crash reported (with patch) by Jonathan Soong 
+  when attempting to backup an ACL on a symlinked file.
+- Fixed an off by one bug in the new resources pointer code.      
+  res_head array was one too small.
+- Added Errors to last_job list. This allows detecting jobs
+  that terminated in a warning.
+- Implement setting the Win32 icon to yellow instead of red
+  when the job terminated OK but with warnings.
+- Fix the Win32 makefile and VC project file. The links were
+  not including the Win32 dlls.      
+- Delete some old Win32 code that was turned off.
+- Eliminate a few more Win32 compiler warnings.
+- Reduce the output produced by NIS (Win32 install builder).
+- Simplify some of the #ifdefing in compat.h
+- Rewrite spooling error handling when I/O error occurs. It is
+  a bit tricky, requiring to truncate the file so that a despooling
+  will work correctly. Needs to be tested.
+- Make better subroutines for setting up for a new job.
+- Start putting all DB ids on #defines (going to 64 bits).
+- Fix gnome-console Makefile.in to work again.
+- All "level=Incremental/Decremental" to the estimate command. This
+  required some re-arrangement of subroutines at a fairly low level.
+- Apply Piotr Jaworski's patch (patch-r-status.diff) to update the
+  catalog status when a backup job starts running.
+- Add (char*) cast to readline call in console.c for old readlines.
+- Copy Makefile.in from gnome2-console to gnome-console (to eliminate
+  need for cats library).
+- Modify spooling code to handle write error (e.g. spooling disk full)
+  more gracefully. Previously despooling would fail.
+- Reduce casting in smartall.c a bit and add counters for 
+  bytes, max_bytes, buffers and max_buffers.
+- Fixed reload algorithm to stack both job end callback and the
+  table id.
+- Fixed the orphaned buffer after reload (job_end_push had to be
+  destroyed.
+- Destroy cond var (jcr->term_wait) only if initialized.
+- Sort the Scheduled Jobs list by start-time, priority.
+- Implement resources on a pointer.
+- Fix Gnome console crash on up/down arrow with no history.
+- Finish first cut of SIGHUP code. To make really work need res
+  on a single pointer rather than in fixed memory.
+- Fix a number of places in query.sql where multiple JobIds are
+  printed (due to JobMedia records).
+- Add new query: List jobs on Volume given Volume name.   
+- Correct socket close on Win32 in bnet.c (in addition to compat.cpp).
+  Caused fd leak in Win32 for each connection.
+- Remove vol labeled test in askdir update_volume_info so that non-labeled
+  Volume in catalog can be marked in error.
+- Close socket in SD when connection rejected. Caused fd leaks.
+- Initialize job_start_wait cond variable after every new_jcr() otherwise
+  NetBSD gets error in library when trying to delete it without being inited.
+- Fix typo (9 instead of 0) return status in write_new_volume_label.
+- Fix mount.c to call routine that correctly marks a volume in error.
+- Move code to rewrite volume label to subroutine -- a bit cleaner.
+- Finish implementation and testing of new restore tree code.
+- Implement feedback while tree is loading.
+- Eliminate printing INFO message in UpdateDB (cats) -- it generates
+  "false" error messages.
+- Eliminate some GTK error messages when running the Gnome2 console.
+- Begin restructuring tree.c for inclusion of the binary_insert()
+  routine.         
+- Apply Peter Eriksson's lib file order changes in linking for IRIX.
+- Abort configure if Internal is  selected as the database.
+- Add testimonials to the Web page
+- Add the bugs list to the Web page "lists".
+- Clarify the English in SuSE and Slackware when SD not running.
+- Applied another extern "C" patch from Peter Eriksson.
+- Fixed a bunch of VC warning messages.
+- Applied the patches sent by Andreas Jellinghaus: build Gnome and  
+  wx-console in client-only build if configured; add ./configure option
+  to permit setting of sbin modes -- default is 0745 as before; remove
+  cats library from Gnome console build; remove old version from Gnome
+  About box. Thanks Andreas.
+- Applied Peter Eriksson's const changes to the source code. Thanks Peter.
+- Implemented a binary_insert() method for dlists -- intended to be used
+  in the restore tree routines.
+- Turned on my bsscanf() code, which replaces sscanf() by my routines, which
+  are a subset of sscanf() used by Bacula, but which have known 32/64 bit
+  behavior rather than vendor dependent !@#$%*.