-
-Release 1.38.11 (28Jun06) released 28JunO6
-28Jun06
-- Add test for IRIX64 as OS
-- Fix scheduler hang during clock shift (due to missing unlock())
-- Minor tweaks to bregex.c
-- Fix to block.c to correctly check for DVD number of parts.
-- Fix to dev.c to permit DVD seeking in spool file. Corrects
- label rewriting problems.
-- Clarify license for techlogs (GPL). I consider them "part" of
- the source code of Bacula.
-- Use FDL license for developer's manual, French translation, German
- translation, bimagemgr manuals (same as the main manual), and
- the web site.
-
-Release 1.38.10 (08Jun06) released 12JunO6
-08Jun06
-- Modify setting ACLs to suppress error message if the file is a
- symbolic link since the file linked to may not yet be created,
- and symbolic links really should not have attributes ...
-06Jun06
-- Complete implementation of acl.c error message during restore.
- During backups, errors getting acls are silently ignored, as was
- previously the case.
-04Jun06
-- Modify configure.in to check for typeof().
-- Better detection of postgresql installation if pg_conf works.
-- Fix RescheduleTimes = 0 bug (should not reschedule).
-- Down port from 1.39: fixes for reload, autochanger error messages,
- scheduler fixes for reload and day light savings change,
-01Jun06
-- Implement partial error messages for src/filed/acl.c
-- Fix return code to fail when doing update barcodes and
- Pool resource is not found. This previously caused Volumes
- to be labeled as cleaning tapes.
-- Small updates to projects file.
-26May06
-- Prevent DVD code from rewriting label if the device cannot be
- opened read/write.
-- Used __GNUC__ to detect GNU g++ as suggested by John Goerzen to
- fix Debian build bug.
-- Fix Dir/SD run race in migrate.c, verify.c, and restore.c
-- Update projects file.
-24May06
-- Applied patch posted by Jaime Ventura to bug #570 to correct failure
- of restarted jobs to complete (due to a destroyed pthreads conditional
- variable used by the message thread).
-- Fixed bug #619 where Bacula would not restart jobs with MaxRestartTimes
- set to zero.
-- Apply patch from John Goerzen bug #611 to fix bad manual links in the code.
-- Apply patch from Rudolf Cejka bug #614 to removed trailing
- colons in query.sql file.
-- Apply patch from Rudolf Cejka bug #613 to correct prunning of files
- not to create orphans.
-- Apply patch from Rudolf Cejka bug #617 to use mtime instead of ctime
- in restore long listing.
-- Apply patch from Rudolf Cejka bug #609 to use MarkId in verify.c instead
- of incorrect MarkedId.
-- Apply patch from adioso bug #616 to correct text in manual (replace
- Director with File daemon).
-21May06
-- Move DIR "run" command to SD before starting the message thread
- as suggested by Cristopher Hull to avoid a race deadlock from
- two threads using the bsock structure.
-- Modify LICENSE to correct some problems pointed out by Debian.
-05May06
-- Correct EOF with no \n lex.c problem.
-- Add additional INFO messages if autochanger cannot be used.
-- Add Eric Bollengier's lex error handler fix, which corrects most
- of the reload problems.
-
-Release 1.38.9 (02May06)
-02May06
-- Added code to strip backslashes from Windows filenames during
- a restore.
-- Corrected Win32 License to use the correct LICENSE file.
-- Corrected the buffer count and bytes reported in the heap
- statistics.
-26Apr06
-- Implement an NT_() macro to indicate that text should NOT
- be translated.
-- Fix a number of incorrect strings marked for translation, when
- they should not be (e.g. commands).
-- Fix StartTime bug reported for ClientRunBeforeJob and RunBeforeJob
- Patches supplied by user in bugs #608 and #599.
-- Use most recent of st_ctime and st_mtime in restore tree DIR
- listing. This fixes some problems with Win32 printing incorrect
- values.
-- Correct the clock shift comm time calculation between the DIR
- and the FD. It was added rather than subtracted.
-- Strip all backslashes in filenames to be restored on Win32
- machines -- the names should all be in Unix format, and if
- there are any backslashes it is most likely due to an improper
- FileSet definition, and the files will not otherwise be
- restorable.
-- Remove lib/regex.c (replaced by bregex.c).
-- Delete src/win32/License.txt
-- Modify installer to install LICENSE
-25Apr06
-- Add back ua_label barcode fix from Rufolf Cejka.
-23Apr06
-- Add 'Dir Status' button to the gnome console.
-- Display heap stats in Storage daemon without debug level.
-22Apr06
-- Integrate most of the MinGW changes -- more to do.
-21Apr06
-- Implement using pg_config for finding PostgreSQL files.
- Fixes bug #600. Patch supplied by user.
-- Remove -t option from mktemp in mtx_changer.in and use
- working directory. Fixes bug #578.
-- Update job start time after the any run before job so that
- files created by the script are only backed up once. Fixes
- bug #599.
-- Strip trailing newline only from filenames entered in
- the restore command when reading a file. This permits
- the user to enter filenames with trailing spaces. Fixes
- bug #549. The user supplied a patch that I modified slightly.
-- Use the most recent time (st_mtime, st_ctime) in the dir
- command in restore. This gives the user a better idea of what
- the newest file really is. This fixes bug #574. The fix
- was suggested by the user.
-18Apr06
-- Remove the -f option from the chown in Makefile.in for more
- portability.
-- Change setting the group in Makefile.in to use chgrp for
- more portability.
-- Implement a Bacula read/write lock for Python rather
- than using the Python lock to avoid recursive problems.
-- Correct the uninstall directory names in filed/Makefile.in
- as reported by a user.
-
-Release 1.38.8 (14Apr06)
-14Apr06
-- Correct Makefile for Solaris /bin/sh
-- Correct mtx-changer.in for Solaris /bin/sh
-- Abort if a conf resource does not have a Name =
-12Apr06
-- Change the name of the regex program to bregex.
-- Add the bwild program to the tools directory. It is similar
- to the bregex program.
-- Implement create bregex.h and bregex.c in src/lib from the
- Python regexp program.
-- Use the new bregex.c to implement Regex expressions on Win32.
-11Apr06
-- Modify Makefile to change the permissions on Working Directory
- to 770 if the directory is created.
-- Do not fail the Makefile if changing the permissions or
- owner/group on WorkingDir fails.
-- Correct the old recycling algorithm so that Scratch Volumes
- are selected when looking for a Volume in the changer.
-- Correct a typo in the Verify SQL reported by Joe Park.
-10Apr06
-- Remove automatic case folding on Windows FDs. You must
- explictly use the 'Ignore Case = yes' option.
-- Remove the code added to 1.38.6 and 1.38.7 that pulls a
- scratch volume in an Autochanger early in the 'recycling'
- algorithm.
-08Apr06
-- Tweak license to include Microsoft restrictions.
-- Move mysql.reconnect to after real_connect(). Thanks to
- Frank Sweetser for the patch.
-- Disallow a backslash in a File = directive (Windows junk)
- unless the string is quoted.
-- Apply Eric's patch to ua_label.c so that daemon protocol
- is not translated.
-
-Release 1.38.7 (06Apr06) released 07Apr06
-- Remove timed wait for VSS on Win2K3 as it is not yet
- implemented.
-- Correct bacula.in script to reference bacula-ctl-xx in the
- sysconfig directory rather than the bin directory.
-
-Release 1.38.6 (28Mar06) released 29Mar06
-28Mar06
-- Back port from 1.39 fixes to lib/jcr.c to use foreach_jcr()
- and new jcr chain locking.
-26Mar06
-- Fix a long standing bug in the bacula start/stop scripts.
-- Attempt to add the new bacula-ctl-* files to the rpm.
-- Switch to using typeof() for list traversing to avoid
- as many FC5 g++ compiler warnings as possible.
-25Mar06
-- Split the bacula start/start script into four files:
- bacula -- starts and stops calling other scripts
- bacula-ctl-dir -- starts/stops the director
- bacula-ctl-fd -- starts/stops the File daemon
- bacula-ctl-sd -- starts/stops the Storage daemon
-24Mar06
-- Create datestyle fix for PostgreSQL. Fixes bug #574.
-- Correct editing of JobId from int to int64 in fd_cmds.c
-- Eliminate FileSet name race with bash_spaces() and multiple
- threads by bashing in a local.
-- Fix error return from 'use storage' to print a correct error
- message rather than nothing.
-- Correct false re-read last block error message when two jobs
- are simultaneously writing at the end of a tape.
-- Simplify exit conditions in the reserve.c code to avoid
- possible non-release of reservation_lock().
-- Suffle lock order in reserve to avoid deadlock between
- reservation lock and device mutex.
-- Add Thorsten's VSS timeout code to 1.38 branch.
-21Mar06
-- Initialize jcr mutex before first use. Thanks to Thorsten for
- tracking this down for me !!!! as it broke the Win32 build.
-20Mar06
-- Integrate addition of line count limitation to bsmtp -l from
- Sebastian Stark <stark at tuebingen.mpg.de>
-17Mar06
-- Implement regex test program in tools directory.
-- Attempt to fix time problem with bsmtp with foreign langs.
-- Add strip_trailing_newline() submitted by user.
-
-Release 1.38.6 beta6
-16Mar06
-- Fix bug #537 to allow arbitrary time to mount a volume for
- restore, if polling is turned on.
-- Disallow multiple storage specifications for a job. Should fix Arno's
- problem.
-- Add back a missing store of poolid in jr.poolid.
-- If dir_user or dir-group is specified in ./configure apply it to
- the working-dir. Fixes bug #533.
-- If rescheduling a job cancel the previous incarnation with the SD.
- Fixes bugs #566 and 557.
-- Fix bug #567 do_message() definition type conflict.
-
-Release 1.38.6 beta5
-14Mar06
-- Add more jcr methods and make mutex and use_count private.
-- Create lock/unlock methods for jcr.
-- Fix PostgreSQL bug doing sql_data_seeek() by explicitly reading
- records to get to seek position.
-- Integrate patch from bug #561 to correct conio.c signal definitions.
-- Fix Rescheduling failed Jobs. Ensure that SD message thread
- terminates correctly by doing pthread_kill(). Do not destroy
- SD cond wait variable between executions of the job. Use local
- mutex for cond variable to avoid blocking jcr chain. Fix poor
- use of jcr use count in jobq.c for restarted jobs.
-- Fix obsolete usage of foreach_dlist() to use foreach_jcr() in
- lib/jcr.c -- prevents locking the jcr chaing.
-- Apply patch from bug #564, which corrects listing volumes with
- multiple autochangers. Apply same fix to next volume list.
-- Fix bug #562 where restore bootstrap file is not unique.
-- Use new routine lock_reservations() to lock the reservations
- system, and call it while looking for a volume in askdir.c.
- This could possibly fix bug #543.
-- Stop SD command loop if job is canceled.
-
-Beta4 attached to a bug report but not distributed.
-04Mar06
-- Fix new sql_use_result() code to properly release the
- buffers in all cases.
-- Convert to using new Python class definitons with (object).
-- Use the keyword ujobid to mean the unique job id; job or jobname
- to mean the Job name given on the Name directive, and jobid to
- be the numeric (non-unique) job id.
-- Allow listing by any of the above.
-- Add the user friendly job report code for reporting job elapsed time
- and rates with suffexes.
-- Add Priority and JobLevel as Python settable items.
-- Use TEMPORARY table creation where the table is created by
- Bacula.
-- Add new code submitted by Eric for waiting on specific jobid.
-- Add ACL checking for the dot commands.
-- Fix restore of writable FIFOs.
-- Fix a bug in bpipe where the string was freed too early.
-
-26Feb06
-- Fix bug reported by Arno listing blocks with bls
-- Update the po files at Eric's request.
-
-Release 1.38.6-beta2 25Feb06
-25Feb06
-- Add sql_use_result() define.
-
-Release 1.38.6 beta1 24Feb06
-24Feb06
-- Don't open default catalog if not in ACL.
-22Feb06
-- Add virtual disk autochanger code.
-- Add user supplied bug fix to make two autochangers work
- correctly using StorageId with InChanger checks.
-- Correct new/old_jcr confusion in copy_storage().
-- Remove & from Job during scan in msgchan.c -- probably
- trashed the stack.
-- When getting the next Volume if no Volume in Append mode
- exists and we are dealing with an Autochanger, search
- for a Scratch Volume.
-- Check for missing value in dot commands -- bug fix.
-- Fix bug in update barcodes command line scanning.
-- Make sure Pool Max Vols is respected.
-- Check that user supplied a value before referencing
- it in restore -- pointed out by Karl Hakimian.
-- Add Karl Hakimian's table insert code.
-- Don't ask user to select a specific Volume when
- updating all volumes in a Pool.
-- Remove reservation if set for read when removing dcr.
-- Lock code that requests next appendable volume so that
- two jobs to get the same Volume at the same time.
-- Add new Device Type = xxx code. Values are file, tape,
- dvd, and fifo.
-- Preserve certain modes (ST_LABEL|ST_APPEND|ST_READ) across
- a re-open to change read/write permission on a device.
-- Correct a misplaced double quote in certain autochanger
- scripts.
-- Make make_catalog_backup.in a bit more portable.
-- Implement Karl Hakimian's sql_use_result(), which speeds
- up restore tree building and reduces the memory load.
-- Correct a number of minor bugs in getting a Volume from
- the Scratch Pool.
-- Implement additional command line options for update Volume.
-- Don't require user to enter a Volume name when updating
- all Volumes in a pool.
-
-Release 1.38.5 released 19Jan06:
-19Jan06
-- Apply label barcodes fix supplied by Rudolf Cejka.
-18Jan06
-- Modify standard rpm installation to set SD group to disk
- so that SD will by default have access to tape drives.
-- Allow users to specify user/group and start options
- for each daemon in /etc/sysconf/bacula file.
-
-Release 1.38.4 14Jan06 released 17 Jan 06:
-16Jan06
-- Add two new queries to query.sql provided by Arno. One
- list volumes known to the Storage device, and the other
- lists volumes possibly needing replacement (error, ...).
-15Jan06
-- Add periodic (every 24 hours) garbage collection of memory
- pool by releasing free buffers.
-14Jan06
-- Correct bug counting sized (for display only) in smartall.c
-- Print FD mempool stats if debug > 0 rather than 5.
-12Jan06
-- Correct bug in alist.c that re-allocated the list if the
- number of items goes to zero.
-- Move the reservation system thread locking to the top level
- so that one job at a time tries all possible drives before
- waiting.
-- Implement a reservation 'fail' message queue that is built
- and destroyed on each pass through the reservation system.
- These messages are displayed in a 'Jobs waiting to reserve
- a drive' list during a 'status storage='. Note, multiple
- messages will generally print for each JobId because they
- represent the different problems with either the same drive
- or different drives. If this output proves too confusing
- of voluminous, I will display it only when debug level 1
- or greater is enabled in the SD.
-11Jan06
-- Add enable/disable job=<job-name>. This command prevents
- the specified job from being scheduled. Even when disabled,
- the job can be manually started from the console.
-- During 'update slots' clear all InChanger flags where the
- StorageId is zero (old Media records).
-
-
-Beta release 1.38.4:
-09Jan06
-- Fix autochanger code to strip leading spaces from returned
- slots number. Remove bc from chio-changer.
-- Back port a bit of 1.39 crypto code to reduce diffs.
-- Fix first call to autochanger that missed close()ing the
- drive. Put close() just before each run_program(). Fixes
- Arno's changer bug.
-07Jan06
-- Add PoolId to Job record when updating it at job start time.
-06Jan06
-- Pull in more code from 1.39 so that there are fewer file
- differences (the new ua_dotcmds.c, base64.h, crypto.h
- hmac.c jcr.c (dird and lib) lib.h md5.h parse_conf.c
- util.c. Aside from ua_dotcmds.c these are mostly crypto
- upgrades.
-- Implement new method of walking the jcr chain. The
- incr/dec of the use_count is done within the walking
- routines. This should prevent a jcr from being freed
- from under the walk routines.
-
-Release 1.38.3 05Jan06:
-04Jan06
-- Move the suitable_drive flag to a better place to prevent
- premature termination of the reservation if all drives
- are busy -- should fix Arno's diff/inc pool failures.
-26Dec05
-- Add mutex to single thread VSS code in Win32.
-
-Beta release 23Dec05:
-22Dec05
-- Add OPENSSL_INC to console dependencies, lib dependencies, and
- wx-console dependencies in Makefile.in
-- Add OPENSSL INC/LIB to gnome2_console Makefile.in.
-- Simplify code in askdir.c that waits for creating an appendable
- volume so that it can handle multiple returns from the wait
- code.
-- Modify the wait code to permit multiple returns.
-- Return a zero when 'autochanger drives' is called and
- it is not an autochanger.
-- Make rewind_dev() a method taking a DCR as an argument.
- This permits closing and reopening the drive if the
- rewind fails as happens if the drive was loaded while the
- file descriptor was open. This refreshes the file descriptor.
-- Remove the ST_OPENED flag and always rely on fd < 0 for knowing
- if the device is open or not. This should eliminate
- Arnos problem.
-- Return error if reserve cannot find at least one suitable device.
-- Make wait_for_sysop() return correct state information.
-- Fix Win32 state file problem. write was not using compat
- code. This should fix bug #500.
-21Dec05
-- Modify gui on command to set only GUI mode and not batch.
-- Modify .messages command to always print messages regardless
- of the mode.
-- If GUI mode is on, suppress automatic printing of
- You have messages.
-- Delete old bnet packet code.
-- Ignore new BNET_START_SELECT and BNET_END_SELECT signals in
- wx-console.
-- Modify restore command in wx-console to set gui on and to use
- only .messages instead of messages. Hopefully this fixes bug
- #514.
-Beta release 20Dec05:
-20Dec05
-- Fix seg fault in exit of acquire when canceling a job --
- reported by Wolfgang Denk
-19Dec05
-- Implement load balancing code.
-- Pull a few files from 1.39 where we can maintain compatibility.
-- Rewrite reservation algorithm again. Rename variables to be
- more logical, add HEARTBEAT with Director, allow cancel of
- jobs stuck in reservation, add last resourt any_drive.
-17Dec05
-- Remove quotes from Version table name -- it breaks things.
-- Fix seg fault if user labels a drive directly bug #513
-- Remove quotes around Version as it breaks things.
-16Dec05
-- Merge in Aleksandar Milivojevic's mods to the spec file.
-- Apply sparse code fix for raw drives and fifos. Bug 506
-- Thorsten fixed Unicode cd problem with wx-console bug 505.
-14Dec05
-- Correct reservation system to do a last ditch try
- for any mounted volume, then anyone anywhere.
-- Add quotes around table Version because of
- error in MySQL 4.1.15 -- bug report submitted.
-- Correct some minor problems with btape in the fill
- command.
-- Updates to ssh-tunnel from Joshua Kugler.
-- Added a report.pl program from Jonas Bjorklund.
-- Simplify the O_NONBLOCK open() code for tape drives,
- and always open nonblocking.
-- Do not wait for open() if EIO returned (shouldn't happen).
-- Eliminate 3 argument to tape open().
-- Correct the slot # edited in the 3995 Bad autochanger unload
- message.
-- With -S on bscan (show progress) do not divide by zero.
-13Dec05
-- Make cancel pthread_cond_signal() pthread_cond_broadcast().
-- When dcr is freed, also broadcast dev->wait_next_vol signal.
-- Remove unused code in wait_for_device.
-- Make wait_for_device() always return after 120 seconds of wait.
-12Dec05
-- Use localhost if no network configured
-11Dec05
-- Eliminated duplicate MaxVolBytes in cat update -- bug 509.
-- Remove debug print.
-- Add bail_out in error during state file reading.
-09Dec05
-- Merge updates into 1.38 branch
-- Update specs to include mysql4 define.
-- Stop read_record() if status not ok in second loop.
-- Return rec->FileIndex in dcr->VolLastIndex for normal
- and partial records in read_record(). This allows bscan
- to get FileIndex at EOT correct.
-- Fix butil.c to correctly set dcr -- fixes seg fault in bls.
-08Dec05
-- Apply patch supplied by user (slightly modified) to fix
- correct detection of holes in block devices and FIFOs.
- Bug # 506.
-- Apply patch supplied by user (slightly modified)
- to fix SD hang with multiple pools and bad client
- IP. Fixes bug # 508.
-07Dec05
-- Add nagios plugin to the examples directory. Submitted by
- Christian Masopust.
-- Remove warning message about multiple saves of hardlinked files
- from find_one.c as it can generate too many warning messages.
-06Dec05
-- Reset timeout values before select() per patch from
- Frank Sweetser for problems with non-blocking sockets.
-- Unlink the state file if either reading or writing it gets
- errors. Hopefully this will fix Win32 exit problems.
-- Add sanity check in append.c to ensure that dcr is not NULL.
- This can happen if multiple drive autochanger SCSI control
- channel and drive indicies do not correspond.
-05Dec05
-- Get next volume from Scratch pool before creating a volume.
-- Set new Pool defaults in Vol when moved from Scratch Pool.
-- Remove argument from create_bacula_database for SQLite as it
- caused an error.
-- Add back next_vol index code so that two drive autochangers can get
- a second tape.
-- Change a bunch of debug levels to aid debugging autochangers.
-- Fix reservation so that mutexes are properly applied.
-- Rework reservation algorithm so that two drives can be used
- at the same time.
-04Dec05
-- Apply days keyword patch from Alexander.Bergolth at wu-wien.ac.at
- If this patch is applied, the number of days can be specified with
- 'list nextvol days=xx'
- or
- 'status dir days=xx'
- My use case is to be able to preview the next scheduled job (and the
- next tape to be used) on fridays if there are no scheduled jobs during
- the weekend.
-03Dec05
-- Fix font code in gnome2 console user patch. Fixes bug #501.
-- Fix malformatted bnet error message that caused seg fault
- fixes bug 502
-- Applied user patch to improve README.vc8 in src/win32.
-29Nov05
-- Correct some more editing of JobId's (for 64 bit compatibility).
-- Ensure that StorageId is stored in Media record when ever possible.
-- Add Migration Job to Job.
-- Change Start Storage daemon job to require read and write storage
- pointers.
-- Pass read storage data to SD as well as write storage data.
-- Remove old code from winservice.cpp
-- Break on error in scan.
-- Fix typo in signal.c
-- Separate read/write DCR in SD. Add jcr->read_dcr.
-- Cleanup how find_device() works.
-- Add read output to Status in SD.
-21Nov05
-- Remove abs() in bfile.c so that it compiles on Solaris. Bug #491.
-
-Changes to 1.38.2: 22 November 2005
-- Fix crash in tray-monitor when daemon disconnects. Bug #479.
-- Fix bnet-server bug found on OpenBSD. Bug #486
-- Fix cancel failure bug. Bug #481
-- Fix failure when Pool name has spaces. Bug #487
-- Fix SD crash in autochanger code. Mutex failure. Bug #488
-- Fix a couple of free()s in src/filed/acl.c
-- Fix memory overrun in bfile.c in building OS X resource
- fork filename. Bug #489
-- Add Pool name to SD status output.
-- Add Python install dir for Solaris to configure. Bug #492
-
-Changes to 1.38.1: 15 November 2005
-- Apply SunOS patch for ACLs submitted by David Duchscher.
-- Make sure to set storage before trying to set drive.
-- Add bacula_mail_summary.sh to examples directory. It makes
- a single email summary of any number of jobs. Submitted
- by Adrew J. Millar.
-- Make sure when we do a mount to unblock the device even
- if the drive could not be opened.
-- Merge Scott's new spec files.
-- Add doc on setting up Win32 environment variable supplied
- by Kees van den Broek.
-- Turn off API debug output unless debug set to avoid confusing
- the user.
-- Add Solaris ACL detection in configure.in as supplied by
- Attila Fulop.
-- Implement 'autochanger drives' protocol so that Dir knows
- how many drives an autochanger has.
-- Do not request drive number in label, ... if only one drive.
-- Turn off debug code.
-- Fix update slots to clear slot number of every slot before
- setting it. This fixes (I believe) bug #471
-- Make unmount unload the autochanger slot.
-- Modify open() on mount to be read-only and non-blocking,
- otherwise the mount can block for a long time.
-- Make a few error message numbers unique.
-- Make a few error messages more correct.
-- Apply patch from Thorsten to fix Win98 stat() command.
-- Remove delete of CVS from all makefiles.
-- Fix seg fault when clicking on Add button in wx-console
- restore panel. Bug #470.
-- Fix copyright date and URL typo -- bug #468.
-- Change autostart install for FreeBSD to look for rc.conf
- rather than rc.local as suggested fix for bug #466.
-- Apply patch supplied by Eric Bollinger to fix PostgreSQL
- grant on status. Bug #465
-- Apply patch supplied by Eric Bollinger to fix PostgreSQL
- update script. Bug #464
-- Fix off by one for last Slot of autochanger for label.
-- Update release date.
-- Tweak an authentication error message in dir.
-- Fix autoloader so that mutex is set and released around
- each run_program(). There was a missing set.
-- Remove an unnecessary drive release in autochanger.
-- Modify configure.in to add execute option to sqlite3 catalog
- scripts.
-- Create update_xxx_table_8_to_9 scripts for updatedb
-- Fix wrong variable in bpipe.c debug output reported by user.
-- Fix improper placement of encode_and_send_attributes() in
- FD backup.c causing first file of non-portable Win32 backup
- to have wrong stream. Reported by Thorsten.
-- Move the -lcrypt for PostgreSQL after the PostgreSQL libs in
- autoconf/bacula-macros/db.m4 as suggested by user. Fixes bug #457.
-- Remove @STATIC_CONS@ from tray-monitor Makefile as suggested
- by user. Fixes bug #456.
-
-Released 1.38.0 (28Oct05): 31 October 2005
-
-Changes to 1.37.42:
-26Oct05
-- Don't overwrite pthreadVCE.dll or msvcr71.dll during Win32
- install.
-- Update README.win32 instructions.
-25Oct05
-- Make db_get_job_record() return Name so that the ACL
- can be checked. Fixes bug #446
-22Oct05
-- Insure that all the SD tools init the Autochanger
- resources.
-
-Changes to 1.37.41:
-22Oct05
-- Print error message if no Changer Command found.
-- Apply fix from Martin Simmons to clear structure before
- using it in IPADDR -- fixes a bind() bug on AIX.
-14Oct05
-- Add NetBSD fstype patch from Geert Hendrickx <ghen@telenet.be>
-- Update num_parts only when writing to DVD.
-13Oct05
-- Fix error conditions in bpipe.c DVD routine (terminate buffer).
-- Use a bigger buffer 32K as suggested by Arno in bpipe.c.
-- Increase dvd mount timeout with patch from Arno.
-- Modify DVD code so that it keeps a state flag that indicates
- when the freespace variable is valid. freespace_errno, now has
- either 0 or an errno. There are no negative errnos.
-- Create is_freespace_ok() to test state flag. Also, set_freespace_ok()
- and clear_freespace_ok(). Modify code to use them. This
- simplifies a bit the logic of the freespace code.
-- Edit 64bit debug values correctly in dvd.c
-- Fix %e variable to check num_parts rather than part.
-- Use static buffer instead of static buffers for FI_to_ascii()
- and stream_to_ascii() debug routines in SD. This is to prevent
- possible race conditions between two threads (possibly Phil's
- unmount problem).
-12Oct05
-- Add a .dir command that separates arguments with commas. It
- is intended to be used in the tree routines to get a
- machine readable output for GUIs like wx-console.
-- Make configure set dvd-handler to have execute permission.
-- Install dvd-handler as is done for other dvd-xxx scripts.
-- In block.c call dvd_write_part() to write last part rather
- than dvd_open_next_part().
-- Prefix some DVD subroutines with dvd_
-11Oct05
-- Add extra debug to Update media error for VolFiles decrease
- error.
-- Do not update dev->file on set_ateof() for non-tape.
-10Oct05
-- Mark DVD volume in error if part cannot be written.
-- If a DVD is mounted, unmount it before asking operator
- to mount an different one.
-- Add Arno's dvd-handler script to the scripts directory and
- integrate with configure. It replaces both existing scripts.
-- Make default schedule start at 23:10
-- Implement gui release in Makefile. It creates two .tar.gz
- bacula-web and bimagemgr.
-08Oct05
-- Add README plus tar release to gui project.
-- Manual documentation
-- Tweak bacula.man doc
-- Add PRAGMA synchronous = NORMAL; to SQLite3 tables. This
- speeds up SQLite3 so it is only about 10% slower than version
- 2.xx. Thanks to Russell Howe for this tip.
-- Add msvcr71.dll to pebuilder .inf file as it is needed by
- Bacula FD. Thanks to Brandon for passing this fix to Scott.
-05Oct05
-- Add VolumePurged method to Python JobEvents class. Fixes
- bug #428 (I think).
-- Add JobId index to File table for MySQL.
-- Correct tray-monitor crash of bacula-dir. qstatus_cmd()
- code referenced the wrong pointer. Fixes bug #438.
-- Add bacualnovss.mak file from Martin.
-- Remove Pool from restore string in wbrestorepanel.cpp. Patch
- from user for bug #433.
-- Correct code in wbrestorpanel.cpp with misplaced parens. Patch
- from user for bug #431
-- Correct printing filenames/date/times in wbrestorepanel.cpp due to bad
- column alignment. Patch from user for bug #432.
-
-Changes to 1.37.40:
-01Oct05
-- Add fix to compat.h supplied by Martin Simmons that permits
- building the Win32 FD without VSS.
-29Sep05
-- Bring cats/bdb_x.c routines up to version 1.37 (return values
- are different).
-28Sep05
-- Integrate libwrap patch from Szechuan Death. They should
- also fix bug 423.
-- Clean up patches directory for next release.
-- Add PS variable in bacula.in script as recommended by a user.
-- Correct mtx-changer.in so it only creates a temp file when
- actually needed.
-- Add patch supplied by user in a bug report to fix gnome2
- console buttons.
-- Add patch from Peter Eriksson <peter@ifm.liu.se> to correct
- NLS error in tray-monitor.c
-26Sep05
-- Add code to catalog_update to detect NULL db pointer.
-- Remove char *msg argument from catalog_request and
- catalog_update().
-24Sep05
-- Fix mode change open in btape.c
-- Use nonblocking opens on Linux only.
-- Move set_blocking code for tapes into method to
- simplify main line code.
-- Cleanup the code for ensuring we advance tape on fsf.
- This should fix IBM problems -- patch from Adam Thorton
- was very helpful.
-- Remove test for BMT_EOD in fixup_device... this eliminates
- need for status_dev() routine.
-- Before doing label ensure device is in read-write mode.
-
-Changes to 1.37.39:
-20Sep05
-- Tweak daemon.c berrno, copyright.
-19Sep05
-- Fix handling of temp file in mtx_changer.in, reported as
- a security bug, but it is not really. Bug #422
-- Fix security problem of handling temp file in randpass.
- Bug #422.
-- During label/relabel, add new_volume to VOLRES list in SD.
-18Sep05
-- Apply Landon's patch for the TLS ANS1 API change.
-- Remove old code.
-- Make single exit path in first_open_device().
-17Sep05
-- Make new_volume walk through all Vols looking for dev
- to release.
-16Sep05
-- Make 'quit' command in console always allowed.
-- Remove the storage list between each console command to
- keep Dir from remembering a previously selected SD.
-- Add code to reservation VOLRES subroutines to try to ensure
- we don't end up with two Volumes on the same drive.
-- Simplify the mutex code in VOLRES a bit to reduce the chance
- of error.
-15Sep05
-- Apply Nicolas' dvd-freespace.in patch.
-- Make sure SQL table names are not translated.
-- Eliminate incorrect message saying barcodes not
- found in 'label barcodes' -- fixes bug report.
-
-Changes to 1.37.38:
-07Sep05
-- Add ability to have passwords on backup of catalog as
- alternate 3rd argument. Submitted by Andrew Ford
- <A.Ford@ford-mason.co.uk>
-- Turn off TapeAlert by default if user enables a Device
- and add a note to install mtx.
-04Sep05
-- Fix out of order volumes during restore.
-
-Changes to 1.37.37:
-30Aug05
-- Final tweaks to build Win32.
-- Enable debug code in ua_label.c
-- Remove devices from the Volume list even if no
- Volume is in drive. Hopefully this fixes Arno's problem
- of multiple volumes listed in the same drive.
-28Aug05
-- Apply Landon's patch for TLS default values.
-- Correct LOCALEDIR problem in build of Win32
-- Correct ssize_t problem in build of Win32
-- Add code to llprint pools and volumes to debug next item.
-- From bug report, fix resetting Pool defaults in Volume. It
- was a typo 'Max' was missing in several places.
-- Don't allow translation of database Volume Status values.
-
-Changes to 1.37.37 released 26 Aug 05
-24Aug05
-- Ensure that the drive is closed before calling the
- mtx-changer script so that the script can access the drive.
-- Add drive name to reserved Volume list printout in SD.
-23Aug05
-- Fix bug in acquire.c that incorrectly reported volume
- busy.
-- Add additional debug code and messages in reserve.c
-- Eliminate unwanted warning message in reserve.c
-
-Changes to 1.37.36 released 22 Aug 05
-20Aug05
-- Landon's fix for NLS detection
-- Eliminate incorrect compiler warning on FreeBSD.
-- Move Win32 errno message build into berrno constructor.
-- Minor Win32 tweaks
-19Aug05
-- A number of minor Win32 fixes.
-- Remove a PostQuitMessage() as suggested by Thorsten so that
- BartPE restore can work correctly.
-- Fix for create JobMedia so that VolIndex remains valid even
- during a delete Job or pruning -- bug 402.
-- Minor tweak for Win32 build.
-18Aug05
-- Win32 fix -- remove debug O_NONBLOCK code.
-- Fix bug 399 -- make_catalog_backup does not work for sqlite3
-- Implement unloading a volume in a different drive if it
- is needed in the current drive.
-- Implement search for unused autochanger drive.
-- Implement search for exact Volume in reservation before
- other searches.
-- Fix picking up drive in Dir so that it is not done in
- the status command.
-- Eliminate double check on 'loaded' for autochanger.
-17Aug05
-- Start coding better reservation algorithm
-- Always look for slot for label command.
-- Add more debug code for autochangers.
-- Apply fix from Stephan Leemburg <sleemburg@jvc.nl> for
- improper scanning of schedule resource:
- Run = Level=Full Pool=Catalog daily at 1:20
-- Apply patch from Chris Lee <labmonkey42@gmail.com> for
- adding --enable-build-dird --enable-build-stored.
-- Tweak datadir definition in configure.in
-16Aug05
-- Fix bug that missed drive=nn specification.
-- Eliminate nonblocking kludge in heartbeat of FD as
- it caused high CPU usage.
-- Pickup loaded slot when doing open() of tape drive.
-- Make autochanger reservation code go through full list
- first pass until exact match found.
-15Aug05
-- Fix how FileSet is saved in job record to correct continual
- Full save.
-- Make datadir print on config.out listing.
-- Move get FileSet record up in backup init to eliminate continual
- Full save seen by Peter Sjoberg.
-- Add VolumeName to read-only Python variables.
-- Add VolumePurged event for Python.
-- Suppress /dev/ Filesystem change prohibited INFO messages.
-- Do not delete FT_RAW files before restore (allows FIFOs
- to be used for restore).
-13Aug05
-- Add drive specification to mount, unmount, release, label,
- and relabel for Autochangers. Note Dir<->SD protocol has
- changed.
-
-Changes to 1.37.35:
-12Aug05
-- Disable parts of NLS as the configure does not work here.
-- In job backup init (backup.c) define definitive Job level and
- since time, *then* apply Job Pool override selection if any.
-11Aug05
-- Modified bconsole script so that it is improperly
- installed, it will refuse to execute. This avoids
- recursive call loops.
-
-Changes to 1.37.34:
-06Aug05
-- Apply David's ACL fix to src/filed/acl.c
-05Aug05
-- Apply patches sent by David Duchscher <kreios@gmail.com> for
- making ACLs work on MacOS X and FreeBSD.
-04Aug05
-- Apply patch in bug#397 that improved configure
- - find readline under $with_readline/include/readline
- - no libutil under Solaris
- - no need for -ldl under Solaris
-- Make reservation system single threaded during the
- search to avoid two threads competing for the same
- resource.
-- Correct a return code in find_suitable_device_for_job()
- Possibly cause of 'busy writing to another volume'.
-03Aug05
-- Modify open() for tape so nonblocking really works.
-- Use fcntl() to reset blocking status rather than close()
- and reopen the drive.
-- Make sure dev->open() is always called so that any change
- in read/write permissions will occur.
-- Open drives initially in daemon in read-only mode.
-- Ensure that each time the VolHdr.VolumeName is zapped
- or changed that free_volume() is called on the old name.
-
-Changes to 1.37.33:
-03Aug05
-- Require 5 arguments to mtx-changer except list and slots
-- Turn -EPIPE status returns from bpipe to ETIME
-- Include Slot in SD status output
-- Do not term_dev() during initialization in SD if the device
- could not be opened. In the case of a tape drive, there may
- be no tape in the drive.
-
-Changes to 1.37.32:
-02Aug05
-- Correct PostgreSQL database scripts as suggested by a user.
-- Add additional info to FATAL message generated when a device
- is busy writing to another volume.
-- Suppress an inappropriate NULL Volume name message after a cancel.
-- Correct a warning message in reserve.c
-29Jul05
-- Apply user's patch to make mutiple modifiers for times
- work correctly.
-- Make read_dev_volume_label() handle ANSI/IBM labels
- correctly -- ie space over any label at the beginning
- of the tape.
-28Jul05
-- Make ANSI/IBM writing of HDR1/2 labels ignore any
- errors if at end of tape.
-- Apply Martin's patch to improve Python detection in
- configure.in
-- Temporarily turn off disk seeking until I find the
- cause of the problem.
-27Jul05
-- Add OSF1 patch supplied by user.
-- Use number of files selected from write_bsr() only
- if it is not defined.
-- Explicitly seek to end of file when getting size for
- restore test.
-- Correctly set EndBlock position in JobMedia record
- for files.
-- Remove unnecessary set StartBlock in bscan. Caused bscan
- regression error.
-26Jul05
-- Modify mtx-changer to wait a maximum of 300 seconds.
-- Do restart of failed jobs only for Backups job types.
-- A number of DVD updates from Nicolas.
-24Jul05
-- Turn off old service helper code in Win32.
-- Correct Messages bug found by Phil in stored.
-23Jul05
-- Complete (almost) documentation of 1.38.
-- Add error messages for error conditions with VSS.
-- Fix additional problems with VSS backup that I introduced.
-Changes to 1.37.31:
-22Jul05
-- Correct compiler complaints in wx-console and tray-monitor.
-- Correct VSS problems recognizing c:
-- Add VSS before job status
-- Fix output of status from being one big line.
-- Change cd xx; make to cd xx && make as suggested by Phil.
-- Cleanup projects file
-- Remove unnecessary casting of FF_PKT in filed.
-- Apply Thorsten's bugfix for vss_generic.cpp
-- Add check for df path for dvd_freespace
-- Use df to get space used on DVD.
-- Change sense of flag indicating erase DVD or not before writing.
-- Fix bpipe so that it never modifies the result pointer.
-- Replace more dev_name by print_name().
-- Rewrite edit_device_codes_dev() so it does not overwrite the
- supplied buffer.
-- Update printing of labels (for bls) so that critical information
- is printed (Job name and timestamp).
-- Cleanup old spool files when starting the SD.
-- Modify vss.cpp to allow C: as a path name. Otherwise VSS
- doesn't work when only a drive name is given.
-- Modify vss.c to eliminate double / in filenames.
-- Update doc -- particularly the restore chapter.
-18Jul05
-- Make all files in working directory have .xxx at end.
-- Work on DVD writing.
-- Fix keepatime bug (bugs database).
-- Move Python variables from Job to Bacula. They are
- DirName, Version, ConfigFile, and WorkingDir
-- Fix delete of bootstrap to only occur on Bacula created
- filenames.
-- Allow cancelling a Job name that is not active. It is
- sent to the daemons.
-17Jul05
-- Fix name space pollution by OpenSSL 0.9.8 reported by
- Matthias Kurz -- applied his patch.
-- Fix bpipe.c so that it does not modify results pointer.
- ***FIXME*** calling sequence should be changed.
-- Remove some remaining references to dev_name.
-- Fix calls to mount_dev() and unmount_dev() to
- correspond to returned value (bool instead of int).
-- Try without success to make DVD writing work.
-== Nicolas
-15Aug05
- - Convert dvd-writepart to Python.
- - Increase delay from 3 seconds to 5 seconds between SIGTERM and SIGKILL when
- killing external programs.
-13Aug05
- - Add gettext macros in autoconf/gettext-macros.
- - Modify how localedir is set in configure.in.
- - Remove setlocale check (useless).
-10Aug05
- - Mark translatable strings in all source files.
-08Aug05
- - Create French and Italian translation files (fr.po, it.po).
- - Add support for translation in configure and Makefiles.
- - Update autoconf/aclocal.m4 so it is automatically created with aclocal
- (Note: autoconf/gnome-macros is not used anymore, it may be removed).
-30Jul05
- - Fix src/lib/bpipe.c:run_program and run_program_full_output to detect if the watchdog
- killed the program, and return an error if it is the case.
-26Apr05
- - Modify parse_config to get a LEX_ERROR_HANDLER as a parameter
- - lex_open_file now returns NULL if the file can't be opened. All calling functions have
- been adapted.
- - Remove set_exit_on_error function
-07Apr05
- - Fix 'unknown device type' problem with DVD devices.
- - Fix crash when there is no media in the DVD drive.
-09Jan05
- - Update the documentation and ReleaseNotes.
-05Jan05
- - Add FreeSpaceCommand in Device (SD configuration file) and implement it.
- - Some modifications (again) on how guessed volume names are handled (now it should work).
- - Part files on the hard disk are removed if they are empty.
-04Jan05
- - Major fixes on how guessed volume names are handled.
- - Minor fix in src/stored/append.c.
- - Replace, when possible, POOLMEM by POOL_MEM in the new code of src/stored/dev.c.
- - New script, scripts/dvd-freespace, which gets the free space available on a writable DVD.
-03Jan05
- - Add WritePartAfterJob directive in Job resource (Director)
- - Add WritePartAfterJob directive in Schedule Resource (Director)
- - Implement these new directives
-02Jan05
- - New function, open_guess_name_dev in src/stored/dev.c, which tries to guess the volume
- name of a mounted device, so the label can be read.
- - New script, scripts/dvd-writepart, which write parts to DVD+/-R(W).
- - Removed WriteFirstPartCommand directive in Device (SD configuration file).
- - Use readdir_r instead of readdir (src/stored/dev.c:open_guess_name_dev).
-01Jan05
- - Add RequiresMount, MountPoint, MountCommand, UnmountCommand directives in Device (SD configuration file).
- - Implement these directives (volumes can now be restored from a manually written DVD).
- - Add WriteFirstPartCommand, WritePartCommand directives in Device (SD configuration file).
- - Implement these directives (DVD writing now works).
- - New function run_program_full_output in src/lib/bpipe.c.
- - Lots of bugfixes and cleanups in the new code.
-29Dec04
- - Add VolParts field in Media table
- - Add MaximumPartSize directive in Device (SD configuration file)
- - File Volumes can now be splitted in multiple files ('parts')
- - Fix SQL error in sql_list while doing 'llist jobmedia'
-
-Changes to 1.37.30 released 16 July 2005:
-14Jul05
-- Fix 'dir' command scanning field misalignment in
- wx-console.
-- Switch to using the wxWidgets Unicode library.
-- Include msvcr71.dll in distribution.
-- Add VSS to status line in Win32 FD if enabled.
-- Get VSS build scripts working with Thorsten's help.
-- Unlink the bootstrap file after sending it to
- the FD.
-- Remove sending include/exclude lists to the FD during
- a restore -- deprecated code.
-- Cleanup the bootstrap files in the FD.
-
-Changes to 1.37.29:
-14Jul05
-- Remove old commented out code from configure.in
-- Add baculavssfd.mak file for building VSS version of
- Win32 FD.
-- Correct date (year) in vss.cpp and vss_generic.cpp
-13Jul05
-- I finally found and squashed the elusive SD crash.
- I needed to initialize the used volume list before
- firing off the device initialization thread.
-Changes to 1.37.28:
-11Jul05
-- Make sure that bpipe results are zapped even on
- error return.
-- Lots of documentation.
-- Do not prune volume marked as append when needing a
- new Volume.
-- Print a warning message in SD if a non-used Volume
- is specified and autolabel not turned on.
-- Correct a bug in chksum.c concerning SHA1 signatures
- (an * should have been & when checking for a bit flag).
-- Print File:Block for all label records in label.c -- concerns
- primarily bls when doing Job listings (-j).
-- Correct is_volume_in_use() to return false if testing
- on the same device where the Volume is already mounted.
-- Define a init_done flag in the SD that is set when the
- devices are initialized and make users connecting wait.
- This prevents useless connect failure warning messages.
-- Do additional device locking in ask_op_to_mount_volume()
- to prevent race conditions with a user labeling a Volume
- or autolabeling.
-09Jul05
-- Add a test for error return from bnet_wait... in heartbeat.c
- in FD to avoid CPU loop.
-- Implement TLS in gnome console and wx-console.
-
-Changes to 1.37.28:
-08Jul05
-- Correct a NULL pointer reference in the mount command.
-- Correct typo in Copyright
-- Add detection of EOM for IBM drives (i.e. errno == ENOSPC)
-07Jul05
-- Remove temp file created in mtx-changer script.
-- Make fsf_dev() into a class method.
-06Jul05
-- Modify mtx-changer.in script to return slot:barcode for
- Volumes that are loaded in the drives.
-- Correct some more places where dev->is_blocked() needs
- to be checked in dircmd.c in SD.
-- Update doc.
-05Jul05
-- Add code to ensure that reserved but unused volumes
- are freed.
-- Correct how Volumes are mounted and handled so that the SD
- does not get stuck if multiple volumes are used (recycling,
- relabling, ...)
-- Correct bug where you could relabel a volume while it
- was being acquired -- created chaos.
-04Jul05
-- Correct seg fault caused by open() calling sequence change.
-03Jul05
-- Add new rc-chio-changer script by Rudolf Cejka to
- examples/autochangers
-- Apply Rudolf's changes to bacula.in
-- Expand the space from 8 to 10 characters in editing
- file sizes for restore and dir of catalog, otherwise
- GB sizes are truncated -- fixes bug report.
-- Modify wx-console to know about 10 character widths.
-- Allow decending into top level directory if 'recurse=no'
- is set. Fixes a bug report.
-- Install pthreadVCE.dll when installing console or wx-console
- on Win32 systems. Fixes bug report.
-02Jul05
-- Tweak dvd-writepart script to prevent door from opening/closing
- so much.
-- Remove GROUP BY in several PostgreSQL commands to prevent error.
- Resolves bug report.
-- Ensure that < as first character of filename list is not treated
- as a directory for restore.
-- Add debug to heartbeat in FD as it seems to go into an
- infinite loop from time to time during SD failure in DVD writing.
-- Add more debug code to dvd writing.
-- Attempt not to destroy existing fs on DVD.
-30Jun05
-- Detect device mounted for DVD and suppress be sure to
- mount message after label.
-- Set Cleaning tape status to 'Cleaning' and force no
- MediaType.
-- Get DVD writing working with new standard Bacula open()
- code.
-- Rename get_filename() to make more sense.
-- Detect 'is already mounted on' on mount command so to avoid
- error if device is already mounted.
-- Eliminated guess_name() code. It may be necessary to
- add it back later.
-- Eliminate seg fault from printing invalid results.
-- Make dvd_write_part() bool.
-
-29Jun05
-- Attempt to fix DVD writing by eliminating a number of the
- DVD subroutines to simplify.
-- Modify DEVICE::open() to take dcr as first argument. This
- will permit providing more info to DVD opening.
-- Fix scanning for time/size items which in some cases
- ate the next line.
-- Eliminate read_dvd_volume_label(). New code (not yet written)
- *must* open dvd appropriately before calling
- read_dev_volume_label.
-- Modify open_first_part() open_next_part() to take DCR as
- argument.
-- Make label command from console work on DVDs.
-- Make mount command from console work on DVDs.
- Unmount does not work yet.
-
-Changes to 1.37.27:
-27Jun05
-- Add Database vendor to CatalogRes tuple for Python.
-- Update doc
-- Implement DoesVolumeExist(Vol) for Python.
-- Prevent python command from seg faulting if no arg given.
-
-Changes to 1.37.26:
-26Jun05
-- Add set_mode method in DEVICE.
-- Correct set_mode method in DEVICE
-- Add more DVD debug info
-23Jun05
-- Check for incorrect duration and size modifiers in conf files.
-22Jun05:
-- Make Version a tuple (version, build-date)
-- Add CatalogRes tuple (DBName, Address, User, Password,
- Socket, Port)
-- Add Version, ConfigFile, and WorkingDir as Python attributes
- in the Director.
-- Implement code (principally for Win32) that on failure to
- create a file, it will cd into the directory and attempt
- to create the file using a relative path. This avoids creating
- files with paths which fail on Win32.
-- Fix parsing of times and sizes with decimal numbers.
-- Make free_volume_list() in SD work if vol list is not
- initialized (./bacula-sd -t).
-21Jun05:
-- Add debug error printout when open() fails.
-- If open() of DVD fails in mount.c, return false.
-- Split open() code for DVD into separate subroutine in dev.c
-
-Changes to 1.37.25 released on 20 Jun 05:
-20Jun05:
-- Fix bug where Storage daemon gets confused about what
- tape is mounted. (one line of code was inadvertently
- deleted).
-
-Changes to 1.37.24:
-18Jun05
-- DVD writing/reading seems to be mostly working.
-- Set execute bits on dvd-freespace and dvd-writepart
-- Make dvd-freespace use existing dummy file.
-- Modify dvd-freespace to pickup size from Track Size:
-16Jun05
-- Add Date, Job, level to updates to .bsr file in
- dird/backup.c
-- Add debug info to dvd-freespace.in
-- Fix hard coded bacula.sql in make_catalog_backup reported
- by a user.
-- Make sure a verify volume to catalog never reports an error
- if there are zero files to verify.
-- Remove confusing debug info in filed/backup.c on network
- error.
-- Make sure output from console is not sent to system log.
-- Convert open_dev() into a class method.
-- Change VolHdr.VolName to VolHdr.VolumeName.
-- Add a flag in the device state word to indicate that
- we found Media in the drive (DVD).
-- Make mount_dev() and unmount_dev() return bool.
-
-Changes from Nicolas Boichat:
-26Apr05
- - Modify parse_config to get a LEX_ERROR_HANDLER as a parameter
- - lex_open_file now returns NULL if the file can't be opened. All calling functions have
- been adapted.
- - Remove set_exit_on_error function
-07Apr05
- - Fix 'unknown device type' problem with DVD devices.
- - Fix crash when there is no media in the DVD drive.
-09Jan05
- - Update the documentation and ReleaseNotes.
-05Jan05
- - Add FreeSpaceCommand in Device (SD configuration file) and implement it.
- - Some modifications (again) on how guessed volume names are handled (now it should work).
- - Part files on the hard disk are removed if they are empty.
-04Jan05
- - Major fixes on how guessed volume names are handled.
- - Minor fix in src/stored/append.c.
- - Replace, when possible, POOLMEM by POOL_MEM in the new code of src/stored/dev.c.
- - New script, scripts/dvd-freespace, which gets the free space available on a writable DVD.
-03Jan05
- - Add WritePartAfterJob directive in Job resource (Director)
- - Add WritePartAfterJob directive in Schedule Resource (Director)
- - Implement these new directives
-02Jan05
- - New function, open_guess_name_dev in src/stored/dev.c, which tries to guess the volume
- name of a mounted device, so the label can be read.
- - New script, scripts/dvd-writepart, which write parts to DVD+/-R(W).
- - Removed WriteFirstPartCommand directive in Device (SD configuration file).
- - Use readdir_r instead of readdir (src/stored/dev.c:open_guess_name_dev).
-01Jan05
- - Add RequiresMount, MountPoint, MountCommand, UnmountCommand directives in Device (SD configuration file).
- - Implement these directives (volumes can now be restored from a manually written DVD).
- - Add WriteFirstPartCommand, WritePartCommand directives in Device (SD configuration file).
- - Implement these directives (DVD writing now works).
- - New function run_program_full_output in src/lib/bpipe.c.
- - Lots of bugfixes and cleanups in the new code.
-29Dec04
- - Add VolParts field in Media table
- - Add MaximumPartSize directive in Device (SD configuration file)
- - File Volumes can now be splitted in multiple files ('parts')
- - Fix SQL error in sql_list while doing 'llist jobmedia'
-
-Changes to 1.37.23:
-- Renamed to make unique version for open_next_part()
- changes.
-
-Changes to 1.37.23:
-- Renamed to make unique version for open_next_part()
- changes.
-
-Changes to 1.37.22:
-14Jun05
-- Fix the same state variable problem in open_next_part().
-- C++ify the SD code a bit more.
-13Jun05
-- Add more debug code and clarify debug code for DVDs.
-- Do not save and restore state in open_first_part()
- since state should be properly set after open_dev().
-- Make default mandir /usr/share/man
-- Install Bacula man page.
-- Implement passing of FileSet Enable VSS to FD.
-- Move main body of reserve drive code into subroutine
- so that it can be called multiple times.
-12Jun05
-- Eliminate getpass() for Win32 builds in console as the
- function does not exist.
-10Jun05
-- Correct some reservation problems in SD when no devices
- are available.
-- Start removing #ifdef HAVE_TLS by sneaky tricks.
-- Begin implementation of TLS in wx-console
-- Remove ignoring SIGCHLD from console.
-- Rework the dlist binary search routines for implemenation
- of the Volume reservation code -- make it more general.
-- Strip double slashes // from Win32 filenames in an attempt
- to resolve restore problems on some systems.
-- Fix a minor bugs in the trace code that caused the first
- line output to be lost.
-- Implement a good first cut at adding Volume reservation code
- to the storage daemon (in file reserve.c).
-- Remove old unused code from the tree.c routines.
-
-Changes to 1.37.21:
-06Jun05
-- Fix compile problems on Win32
-- Start writing Volume reservation list (already exists, but
- is not really very good).
-- Implement attribute caching to put Signature into database
- at the same time as the file attributes thus eliminating a
- number of database accesses.
-- Correct a reservation problem.
-- Implement full Dir Storage use.
-- Reduce a bit of TLS #ifdeffing.
-
-Changes to 1.37.20:
-04Jun05
-- Minor changes
-01Jun05
-- Add more documentation to mtx-changer.in
-- Correct link to manual in authenticate.c in various
- directories.
-- Create a new src/stored/reserve.c file where the
- Use Storage command is processed and drives are
- reserved.
-- Modify src/stored/autochanger.c to keep track of each
- Slot that is loaded for each device.
-- Ensure that changer_command and changer_name are picked
- up from Autochanger resource if not specified, and if
- neither is specified, err.
-30May05
-- Fix bextract.c compile problem
-- Create bacula.man
-- Make make distclean clean a bit better
-29May05
-- Remove old code in jcr.c
-- Make testls release jcr chain when terminating.
-27May05
-- Implement Maximum Job Spool Size (actually DCR based)
-26May05
-- Use light weight non-recursive locking on jcr chain.
-- Make JCR a class and implement inc_use_count() and
- dec_use_count() methods that ensure that the jcr is
- locked when inc/dec the use count.
-- Remove the global jcr lock when traversing the jcr
- chain.
-- Use dlist to implement the jcr chain rather than hand
- crafted next and prev links.
-- Lock the jcr chain inside each function that modifies
- the chain.
-
-Changes to 1.37.19:
-26May05
-- Fix compile problem of ua_restore.c on broken compilers.
-- Apply patch from bug 326 to permit bacula status by any user.
-- Fix bug 325 -- conversion of 12:30pm to 24hour time.
-25May05
-- Put Dmsg() on inside if() to avoid calling subroutine.
-- Make restore.bsr have unique name.
-- Allow user to define bsr filename on restore command line
- with bootstrap=xxx.bsr
-- Add limit=nnn to 'list jobs' command.
-- Remove old restore code that did not use .bsr file.
-- unlink automatically generated bsr file.
-- Cleanup heartbeat code so that duped fd is almost sure
- to be released. Previously under certain conditions, the
- memory was not released due to race conditions.
-- Shorten copyright.
-20May05
-- Unify the reserve_device() for a single device into one subroutine.
-18May05
-- Modify wait during use_device to happen only after all devices
- have been examined rather than in the reserve_device code.
-- Correct updating count of number of Volumes in a pool.
-
-Changes to 1.37.18:
-16May05
-- Add more debug to SD for Autochangers + status output.
-- Add Scratch to PoolType in PostgreSQL make...tables and do not
- permit NULL PoolTypes. Fix for bug 319 reported by Eric.
-- Update LICENSE.
-- Add quotes around filename in parse_config error message. Bug
- reported by Eric.
-15May05
-- Change nested \include to \input so that sections are properly
- included in the pdf manual -- update the Web site.
-- Set reconnect flag in MySQL packet to 1 to ensure that connection
- is re-established. MySQL 5 changed default to 0. Fixes bug report.
-- Fix Scratch pool handling as reported in a bug by Eric Bollengier
- by applying his patch.
-- Remove delete job in favor of delete jobid.
-- Add = NULL to configfile definitions as reported by Eric in a bug
- report.
-- Update winbacula.nsi.in to reflect new manual file structure.
-10May05
-- Correct a minor build problem with wx-console.
-- Add cancel() to Dir Python scripting.
-- Re-correct bug in parse-config error handling.
-- Reorganization of use_command in SD to permit
- waiting and multiple drive autochanger support.
-09May05
-- Correct bug in parse_config error handling.
-- Where ever possible mark a volume in error or not
- InChanger in mount.c
-- Fix bug in changing tape pools after first backup. Reported
- by Peter Sjoberg.
-- Enhance mtx-changer to use Working Directory as temp.
-- Remove all but initial setup locking of Res in SD.
-08May05
-- Add Client OS type to Job report.
-- Add version to manual
-- Update the Web site to have a single page for
- the documentation links.
-
-Changes to 1.37.18 release 08May05:
-08May05
-- Correct attribute definition compile error in 1.37.17
-- Correct inverted order of CreateTime and MD5 pointed out
- by a user in a bug report in FileSet db routine causing
- the MD5 to print in the output instead of the time/date.
-
-Changes to 1.37.17:
-07May05
-- Implement cstrlen() in sql list routines.
-- Implement caching of attributes to add the
- signature so that only one DB call will be made
- per file. Not yet turned on.
-- Fix Win32 build for TLS.
-- Optimize File pruning to eliminate one database call.
-- Fix bug that prevented File pruning from working.
-- Implement a cstrlen() which returns the character
- length of a UTF-8 string.
-06May05
-- Move test for MaxStartDelay as suggested by Peter.
-- Implement Python methods (I had to read the Python source
- code).
-- Implement run() method in Director.
-- Add Priority and Scheduled time to Job report.
-- Add JobInit and JobRun events.
-- Add Priority as Python read/write attribute to Job.
-- Correct typo in bsmtp reported by Jo.
-
-Changes to 1.37.16 (07May05): released 07May05
-07May05
-- Implement cstrlen() in sql list routines.
-- Implement caching of attributes to add the
- signature so that only one DB call will be made
- per file. Not yet turned on.
-- Fix Win32 build for TLS.
-- Optimize File pruning to eliminate one database call.
-- Fix bug that prevented File pruning from working.
-- Implement a cstrlen() which returns the character
- length of a UTF-8 string.
-06May05
-- Move test for MaxStartDelay as suggested by Peter.
-- Implement Python methods (I had to read the Python source
- code).
-- Implement run() method in Director.
-- Add Priority and Scheduled time to Job report.
-- Add JobInit and JobRun events.
-- Add Priority as Python read/write attribute to Job.
-- Correct typo in bsmtp reported by Jo.
-
-Changes to 1.37.16 (03May05): released 05May05
-03May05
-- Make a few tls ifdef tweaks.
-- Fix create_file.c Win32 problem pointed out by
- Peter Sjoberg.
-- Fix really ugly bstrncpy() but found by Thorsten.
-- Move winapi.h/c from findlib to lib for inclusion in
- multiple places.
-02May05
-- Thorsten Engel finished his work on Win32 Unicode. We
- now have a single executable that runs on all Win32 machines.
-- Move job initialization code after job scheduling so that
- Verify jobs check for the prior JobId after they are really
- started rather than before.
-- Fix lib/fnmatch.c so that it does proper testing before folding.
-- More documentation -- at tls and ansi labels chapters.
-- Fix fileset_convert.pl to handle empty Exclude statements.
-- Turn regex back off in Win32
-01May05
-- Fix sign extension problem in lex.c that reads UTF-8
- with Chinese characters incorrectly.
-
-Changes to 1.37.14:
-30Apr05
-- Remove a few HAVE_TLS #ifdefs
-- Implement final Python style interface. More implemention to
- be done, but the interface should change little if at all.
-28Apr05
-- Make default no tls support. You must add
- --with-openssl to get tls support.
-27Apr05
-- Update Web header to include google search in the search
- box -- thanks to input from Michel Meyers.
-- Fix md5sum so that it builds with the new openssl stuff.
-- Take some enhancements to the md5sum test program proposed
- by a user.
-26Apr05
-- Apply Tru64 patch supplied by Pascal Pederiva <freebsd@paped.com>
-- Apply Unicode fixes for Win32 from 'Thorsten Engel'
- <thorsten.engel@matrix-computer.com>
-- More work on Python read feature in FD.
-22Apr05
-- Fix (hopefully) the ftello() overflow reported by Peter.
-- Landon Fuller committed his TLS patch.
-- Fixed two minor warnings in console.c with TLS turned off.
-- Updated the Makefile.in for wx-windows and tray-monitor
- to handle TLS. I can only build the tray-monitor.
-- Fix bscan to open tape in read-only mode (actually fix
- it so that it doesn't use the standard open routine).
-- Correct what appears to be an error in setting the
- return value in dvd.c
-21Apr05
-- Get FD Python running -- design Python backup interface.
-- Fix seg fault in SD when referencing Alert Command.
-- More documentation.
-- Fix one more thing in Win32 build.
-20Apr05
-- Doc updates
-- Fix Win32 build
-- Put in production here
-
-Changes to 1.37.13:
-19Apr05
-- Fix SQLite and PostgreSQL table creation script syntax
- problems.
-- Fix new Python code to work for Director.
-- Move lib/python.c to lib/pythonlib.c so that debug output
- is easier to read (can distinguish lib from dird, ...).
-- Cleanup Python build so that Python is not dragged
- into programs that don't use it.
-
-Changes to 1.37.12:
-02Apr05
-- Reset NumVols in Pool record from database on every update
- Pool.
-- Modify DB to support multiple simultaneous copies and
- RAIT stiping.
-- Pass copy and stripe between DIR and SD and put into
- the JobMedia DB record.
-- Update and test SQLite and MySQL datebase creation and
- update scripts.
-- Implement version 9 of the DB.
-31Mar05
-- Convert more atoi to str_to_int64() for DB.
-- Implement filling in NumVols by querying DB rather
- than trying to keep track of it.
-- Add storage name to string passed to in use storage=
-- Fix newVolume() so that the Python script is always
- called.
-- Fix handling of pool,PoolId, and storage in ua_output.
-- Same fix in ua_status.c
-- Remove required locking of resources
-- Replace pthread_cond_signal() by pthread_cond_broadcast()
- hoping to fix the /lib/tls hang problems (lost signal).
-- Move resource locking seaching from parse_conf.c to res.c
- in src/lib.
-- Modify end of volume handling so that fixup_... does not
- redo what block.c has already done -- writing Vol info to
- DIR. This fixes a bug with bad numbers of files on a tape
- when it filled as reported by Peter.
-- In release_device() do not update the DIR on the Volume
- info if the the information was already written at the
- end of the tape.
-28Mar05
-- NOTE!!!! This version has a new DIR <--> SD protocol. Both
- must be updated at the same time.
-- Begin implementation of passing all the Storage and Device
- possibilities to the SD for examination during the reserve
- phase.
-- Modify the reserve and acquire code in the SD to make a
- job wait if the device is not available.
-- Implement New Volume Each Job in DIR and pass to SD, not yet
- used.
-- Remove init/update of the Device resource in DIR
-- Remove passing PoolId to SD and back.
-26Mar05
-- Remove \a and -e from error echos in most Makefiles.
-- Add more debug code when there are errors on the tape
- to try to find Peter's tape problem.
-- Add wait.c (oops forgot previously).
-- Move all the reserve/acquire_device_for_read/append to have
- only a DCR as the argument.
-- Rework the reserve_device_for_append() in stored to wait
- if the drive is not available. Note! This is a short
- term solution.
-25Mar05
-- Comment out Multiple Connections in the document.
-- Move the P() and V() to subroutines so that they can be accessed
- from class methods. The reference to strerror() caused problems.
-- Implement new DEVICE class methods block() and unblock() that
- do what was previously done in 3 lines of code.
-- Implement wait_for_device(), which will wait for any device
- to be released then return. This requires a new global mutex
- and condition variable, and is implemented in src/stored/wait.c
-- Change the code in reserve_device_for_read(), which previously
- failed the job to use the new device wait code.
-22Mar05
-- Apply reschedule patch to 1.37 code.
-- Add copyright to title page of manual so it is clear.
-- Create patch for rescheduling problem found by Ludovic. Storage
- pointers were lost during rescheduling.
-- Attempt to fix 2.6 rescue disk -- failed!
-- Start working on adding a wait routine in the SD.
-- Cleanup some old invalid doc in watchdog.
-- Convert a number of references to dev->dev_name to dev->print_name().
-- Add new wait.c file to SD.
-- Add a few more methods to DEVICE in SD to cleanup code a
- bit -- implement a few of the methods.
-18Mar05
-- Fix more print_name()s for printing device name.
-- Modify open_dev to try 10 times every 6 seconds to
- open the device if it gets an I/O error (meaning no
- volume mounted). This gives a bit of settling in time
- for an autochanger and avoids spurious messages.
-- Change all yes/no to yes|no in the manual.
-- Fix win32 create_file.c typo.
-- Fix a typo in an error message.
-17Mar05
-- Detect if fseeko exists with autoconf. If so, use it
- and ftello.
-- Remove old bacula-*.conf from examples directory (out
- of date).
-- Remove latex-fr index files from CVS.
-- Rewrite code that stops reading the tape so that the
- tape is marked at EOT, then once the work is done,
- the EOT flag is removed.
-- Flush output to file after every send in console.
-- Make setting VolFiles to smaller number fatal.
-- Disable Multiple Connections code.
-- Add patch from user for NetBSD statvsfs() fix to
- fstype.c
-- Take more care with errors in acquire.c
-- Don't run through dvd code in append.c if bad status
- returned.
-- Modify code so that an autochanger fault is fatal.
-- Use dev->print_name() in more places.
-- Implement dev->can_steal_lock() to simplify code.
-- Make btape re-read first 10000 records on fill command.
-- Check error return and fail job from fseeko and ftello
- in spool.c. Don't let a -1 slip in as size.
-
-Changes to 1.37.7:
-15Mar05
-- Apply NetBSD patch from kardel in bug 258.
-14Mar05
-- Add a second job and a second client to the default
- bacula-dir.conf file.
-- Remove old style Include/Excludes.
-- Fix ANSI labels to put EOF1 and EOF2 after each file mark.
-- Add Python to SD and FD.
-12Mar05
-- Implement IBM labels
-- Implement EOF and EOV labels at the end of a volume.
-- Fix a rather ugly problem with the PoolId not getting
- passed correctly. Now the DIR passes the Pool name and
- Media Type to the SD, who passes them back when requesting
- the next Volume. The DIR then looks up the correct PoolId.
- This takes more time, but always works, AND allows wild
- card Media Types (i.e. the SD can decide).
-- The DIR <==> SD protocol has changed.
-
-Changes to 1.37.6:
-11Mar05
-- Fix scanf of PoolId in catreq to handle 64 bit Ids.
-10Mar05
-- Add new ua_update.c file and move update_cmd there.
-- Modify 'update slots' to obtain actual number of slots.
-- Tweak autochanger code to handle new slots request.
-- Modify autochanger code to lock/unlock around slots and
- update slots code.
-09Mar05
-- Patch the FD so that it does not issue an error message if
- it attempts to restore the permissions on a Win32 drive.
-- Edit 'Resource-name' (physical-name) for the device name
- everywhere in the SD.
-- Remove .linked.tex files in preparation for cutover to
- using .tex in place of .wml.
-08Mar05
-- Copy latest config.sub and config.guess from autoconf.
-- Try new way of identifying drives with:
- 'resource-name' (physical-name)
- More work need to a complete conversion.
-07Mar05
-- Rework some of the autochanger data so that the DIR has
- the number of drives.
-- Modify the way the Device info is returned so that it comes
- back as a special message type and can be sent anytime the
- Device status changes.
-- Copy the change name and changer command into the device
- record if none is specified.
-- Require the change command and changer name to be specified in
- and AutoChanger resource.
-- Force all the Media Type records of all devices in an Autochanger
- to be the same.
-06Mar05
-- Add new 'run' command to Job resource in DIR. This permits
- cloning a job as many times as you want.
-- Pass PoolId to SD on Query request. It is now used in the
- Find_media catalog request.
-- Reworked the Device resource in the DIR. Eliminated num_waiting
- and use_count, but added max_writers, reserved, and PoolId.
-- This DIR is nolonger compatible with previous SDs.
-- Add since and cloned keywords to the Console run command
- to support cloning.
-- Implemented store_alist_str() to allow multiple string items
- to be specified in a .conf file.
-- Added %s (since time) to Job code editing.
-- Reworked reserving drives in the SD. It now does it much simpler
- and correctly.
-05Mar05
-- Integrate HP-UX patch from Olivier Mehani <olivier.mehani@linbox.com>
-- Fix FD job.c to test correctly for no level.
-
-Changes to 1.37.4:
-04Mar05
-- Change Developers to Developer's Guide as requested by Michael.
-- Fix developers link in manual
-- Add additional dcr changes in SD to allow multiple dcrs.
-02Mar05
-- Fix a few problems with the MySQL table create in 1.37.
-- Delete the new tables in the table delete files.
-- Increase the number of items permitted in a conf table.
-- Make Director loop over alternative Devices specified in the
- Storage resource until one is reserved by SD.
-- Fix storing of StorageId in Media records.
-- Add AutoSelect = yes|no in bacula-sd.conf
-- Add Autochanger support to Label command.
-- Do not autoselect devices with autoselect set false
-01Mar05
-- Implement setting DIR Storage device to Autochanger
- name.
-- Select first available device in Autochanger.
-- Pass back actual device name used.
-- Allow Query of AutoChanger.
-- Modify Query to include name of AutoChanger if
- Device belongs to one.
-- Remove old Pool code in jobq.c
-- Add Autoselect flag to query and DEVICE class (still
- need Directive).
-28Feb05
-- Lock autochanger script when running.
-- Mark Volume not InChanger if correct volume is not
- autoloaded.
-- Corrected some typos in the make_xxx_tables.in files.
-- Made preliminary split of pre-run and run code for each
- job type. This will permit early opening of SD for reserving
- drives.
-- Add offline and autochanger fields to Device Query record.
-- Correct pthread_mutex_init() for autochanger in SD.
-- Tweak Makefile for LaTeX manual, plus add nav buttons.
-26Feb05
-- Clean up drive reservation system. Add more sanity checks.
-- Implement a few more methods for the DEVICE class in SD.
-- Add latex directories to make clean
-- move DEV_BSIZE to B_DEV_BSIZE to avoid conflicts with
- certain header files (FreeBSD).
-24Feb05
-- Fix an ASSERT that was triggering in stored/acquire.c
- attempt to fix a bug report.
-23Feb05
-- Corrected SunOs to SunOS in btraceback (user submitted).
-- Applied patch from Roger Haakansson <hson@ludd.luth.se>
- to warn the user of defective AWKs during ./configure.
-20Feb05
-- Add some changes submitted by a user for HP client build.
- Not all changes accepted.
-- Rework code in filed/backup.c to ease #ifdefing and make
- program flow more obvious.
-- Split DVD code out of dev.c into dvd.c
-- Tweak #ifdefing to add back all the performance measurement
- #defines in version.h
-- Put most of MTIOCGET code in a subroutine to simplify the
- mainline code.
-- Make clean remove old CVS files
-- Remove unnecessary image files from Latex directory
-- Implement remaining parts of Storage DB record and
- its use in the Director.
-- Implement
- FullMaxWaitTime, Differential Max Wait Time, and
- Incremental Max Wait time in Job resource.
-- Start work on SD Autochanger code.
-19Feb05
-- Add back JobId index for MySQL as default -- speeds up
- pruning.
-- Add more database fields and fix the update scripts to
- include the new items.
-- Pass actual level to FD so that ClientRun editing can reflect
- correct level -- ditto for job status. This makes the DIR
- incompatible with older clients!
-- Move jobq.c acquire resources to static subroutine so that
- the code logic becomes clearer. This is in preparation for
- actually using the new Device resources.
-- Fix some lower case problems in sql_cmds.c reported by
- Debian.
-- Correct a seg fault in the SD reported by a user. Occurred
- only when a high debug level was set.
-- Modify init_dev() in dev.c to take JCR as first arg so that
- proper error messages can be reported in next item.
-- Modify the query and use device SD commands to attempt to
- open the device if it could not previously be opened.
-- Correct error message for Could not reserve device.
-- Correct some minor details with Autochanger resource in SD.
-18Feb05
-- Fix seg fault if debug level 900 set in SD.
-- Truncate Win32 child return code to 8 bits.
-- Remove some old lld's.
-
-Changes to 1.37.3:
-16Feb05
-- Make another attempt at fixing the ClientRunXXX return code
- bug on Win32 machines.
-- Apply ua_status patch from Carsten Paeth <calle@calle.in-berlin.de>
- which enforces console ACLs in the status command for Jobs.
-15Feb05
-- Fix Media LabelDate and FirstWritten to be correctly set.
-- Fix deadlock in multiple simultaneous jobs.
-- Fix tape 'truncation'/'number of files' after restore bug.
-10Feb05
-- Ensure that correct error messages are returned when
- reading an ANSI label.
-09Feb05
-- Modified ANSI label code to preserve any ANSI label
- already found by skipping over it rather than rewriting
- it.
-- Split the ANSI label code into ansi_label.c
-- Do not let user relabel an ANSI labeled tape.
-- Applied a patch for the console help command supplied
- in a bug report.
-- Added some new dev methods. Most notably was
- set_eof(), which handles setting all the dev variables
- when an EOF is just read. This is now used most everywhere
- in the code.
-07Feb05
-- Added code to detect that no files were inserted into the
- tree for a restore. If a specific JobId was specified, the
- user has the option of restoring everything.
-- More progress in implementing 64 bit DB Ids.
-- Modified the daemon start messages for RH.
-- Implement update scripts for all database types.
-- First cut at implementing restore directory (it will not
- recurse).
-04Feb05
-- OK, I think ANSI labels work.
-- Added Label Type = ANSI|IBM|Bacula to Device resource in SD.
- If this is set, it will force writing of the appropriate
- label type.
-- Added Check Labels = yes|no to Device resource in SD. If this
- is set, Bacula will check for ANSI labels and accept them,
- otherwise, ANSI labels will not be accepted when the tape
- is first mounted.
-02Feb05
-- Second cut ANSI labels.
-01Feb05
-- Merge Preben's patch for ACLs and for Mac OS X resource forks.
-- Some doc updates.
-- Display more informative message when a device was not
- found or could not be opened.
-- Add the sqlite3 database scripts.
-- Add some patches for 1.36.1 (note, I have now prepared
- a 1.36.2 with all the patches and some new features --
- to be documented).
-- Some minor doc updates.
-- Add Arno's baculareport.pl script to the examples directory.
-29Jan05 -- after vacation
-- Add support for SQLite3 (it seems to run at 1/2 the speed
- of SQLite2). Use --with-sqlite3 instead of --with-sqlite
- to get SQLite3.
-- Add target for running qemu to boot Rescue CDROM
-- Add code to support kernel 2.6 in Rescue CDROM -- does NOT yet
- boot correctly.
-- Implement ANSI labels -- not yet tested.
- This required changes to DB format. No upgrade script yet.
- Note, more work needed to modify 'update' command to handle
- changing label types, also must restrict volume name lengths
- to 6 characters.
-- Add new Device, Storage, and MediaType records to DB. No
- upgrade script yet.
-- Add MediaType to bsr file record types. Not yet used in SD.
-- Permit multiple device specifications in Storage resource in
- Dir conf file.
-- Implement Device resources. Director requests Device resource
- info from SD on startup.
-- Note!!!! DIR->SD incompatible with previous versions.
-- Remove multiple Storage definitions in Job resource. One can
- still specify multiple Storage resources, but they all go into
- a single alist, and imply sending data to each Storage daemon
- simultaneously.
-- Implement Device query command between DIR and SD.
-- Allow DIR to 'reserve' a Device. It will then be acquired
- when the FD connects to the SD.
-- Turn all DIR resources into classes, and implement a few class
- methods -- more to come.
-- Turn DEVICE in SD into a class, and implement a number of inline
- class methods -- more to come.
-- I had serious problems with ACL errors on my Laptop, and so had
- to add the following patch:
- @@ -181,7 +181,7 @@
- }
- /***** Do we really want to silently ignore errors from acl_get_file
- and acl_to_text? *****/
- - return -1;
- + return 0;
- }
-- Added edit_int64()
-- Reworked and tested a bit the htable routines.
-- Major changes to SD acquire.c -- DIR can now reserve devices. Needs
- lots of testing!!!!
-- Made a special state code for DVD -- this simplifies the logic
- of the code, but I probably broke it. Testing needed!!!!
-- Add AutoChanger resource to SD, but not yet used.
-
-Changes to 1.37.2:
-12Jan05
-- Integrate Preben 'Peppe' Guldberg <peppe@wielders.org>'s
- acl patch. Fix case where configured but no ACL exists.
- Rework calling arguments to be shorter and positioned
- more typically in Bacula usage.
-11Jan05
-- Fix scripts/bacula.in to have awk on an environment variable
- and add comments for Solaris users.
-- Turn off inet_aton in src/lib/address_conf.c for Win32
-- Add new files to win32 build and eliminate a compiler warning.
-- Add sample DVD Device resource to bacula-sd.conf
-08Jan05
-- Integrate Nicolas' patch for direct DVD support.
-07Jan05
-- Fix fstype error returns.
-- Apply Preben's cleanup.patch which puts back much of the
- cleanup code in src/filed/restore.c
-06Jan05
-- Apply all of Preben's patches, but revert to old backup.c
- and old restore.c in filed. Also turn off code in new
- acl.c because of errors. The new code, when fully implemented
- moves platform specific code into acl.c.
- One of the patches also implements WildFile and WildDir -- thanks.
-01Jan05
-- Implement Python in the SD (no events yet though).
-- Fix some typos in the previous commit.
-30Dec04
-- Enhance CDROM boot to include some documentation at boot time.
-- NOTE!!!!! The CDROM will not boot 2.6 kernels because the
- boot sequence has changed significantly. Updates to come
- later.
-- Add memtest option to CDROM boot.
-- Include Nicolas' changes to fix llist JobMedia records.
-- Make sure that ClientRunBefore/After messages from the program
- are terminated with a newline. Add strerror to output error
- messages.
-- Return program exit status code in Win32.
-29Dec04
-- Add memtest86 to Bacula Rescue disk
-- Enhance Rescue disk startup screen
-24Dec04
-- Move some variables to eliminate Solaris 2.6 compiler warnings.
-- Fix the seg fault at the end of a job in the FD when using
- old style include/excludes.
-22Dec04
-- Apply Preben's ACL patch.
-- Integrate Preben's restore patch.
-- Integrate Preben's verify teaks.
-- Fix doc/latex/Makefile to copy/remove .eps files when building
- html and web outputs.
-21Dec04
-- Fix Bacula so that it does not exit if there is a syntax error
- in its conf file during a reload command. Bug 182.
-- Apply fixes suggested for old Solaris networking.
- Fixes bug 190.
-- Apply Preben 'Peppe' Guldberg <peppe@wielders.org>
- three patches that clean up white space:
- ws.patch.02.strings:
- Breaks strings that span lines into concatenated strings. I am not sure
- if you like this one. Other code works with concatenated strings, though.
- ws.patch.03.trailing:
- This removes trailing whitespace. No changes resulted from this for
- my setup.
- ws.patch.04.leading:
- This replaces space runs at the start of line with tabs. No changes
- again.
-- Fix overriding storage specification to be done
- through a subroutine.
-- Fix autoconf so it runs with FC3.
-- Add Python4.3 to configure search paths.
-- Always copy and delete storage definitions into jcr.
-- Check that VolumeName supplied by Python is valid.
- Return 0 if not.
-19Dec04
-- Fix undefined in non-Python build.
-- Update rescue disk to include mkinitrd
-- Fix umount_drives in rescue disk (only one arg to umount)
-- Ensure that if SD is manually set in Console, it is used.
-- Put generate_event on pointer and plug it in init. This
- permits using it in /lib
-- Correct despooling size reported to be Job specific rather
- than for the whole drive.
-18Dec04
-- Fix bug 207. jcr use count off by one when manually
- scheduling jobs.
-- Remove FNMATCH test in configure.in and always use
- the one in our library to get the FN_CASEFOLD GNU
- extensions on all platforms.
-- While using the rescue CDROM after my computer would not
- boot, I realized that it would be very useful to have
- a umount_disks. So, it is not implemented, along with
- updates to the READMEs and some minor tweaks.
-- Moved mounting the CDROM in the rescue boot from /cdrom
- to /mnt/cdrom (more standard location).
-- Reboot in CDROM rescue should now work -- requires -d
- option (no write) to work.
-- Hopefully fixed all the IPV6/4 problems and buffer
- problems with networking in lib. Bugs 190 and 204.
- Cleaned up a lot of #ifdefing problems by using routines
- in address_conf.c
-17Dec04
-- Apply Preben 'Peppe' Guldberg <peppe@wielders.org>
- alist fix patch.
-- Remove duplicate code from chksum.h (mentioned by Preben).
-13Dec04
-- Integrate Tim Oberfoell <oberfoell@web.de> patch to ACLs
- to handle both the 'standard' and 'default' ACLs.
-12Dec04
-- Integrated Preben 'Peppe' Guldberg <peppe@wielders.org>
- three cleanup patches (btest, verify, find).
-- Integrated Preben 'Peppe' Guldberg <peppe@wielders.org>
- three cleanup patches (backup, chksum, and verify)
-09Dec04
-- Integrated Preben 'Peppe' Guldberg <peppe@wielders.org>
- patch to avoid doing MTIOCGET on OSes that do not support
- it such as OpenBSD.
-- Integrated Preben 'Peppe' Guldberg <peppe@wielders.org>
- patch to add filesystem type matching to FileSets in the
- Options resource.
-- Integrated Preben 'Peppe' Guldberg <peppe@wielders.org>
- patch to add Mac OSX resource fork support (save/restore)
- to Bacula -- HFS Plus support.
-- Add FileSet to client Job listing query.
-06Dec04
-- Integrated Preben 'Peppe' Guldberg <peppe@wielders.org>
- patch to backup directories skipped (due to no file system
- changes or no recursion), and to add a slash to the end
- of the directory name during the match process.
-- Implement Jamie ffolliott <jamieff@inline.net>
- patch to dird_conf.c that enables Multiple Connections and
- fixes a typo in show. The rest of his patch awaits my suggested
- changes.
-05Dec04
-- Implement run command in Python
-04Dec04
-- Implement conversion of the manual, and some minor
- tweaks to the script tags.
-- Apply a patch supplied by Preben 'Peppe' Guldberg that implements
- ignore case in wild cards and regexes.
-- Fix a truncated line in the above patch due to my cut and paste.
-03Dec04
-- Fix it so that the InChanger flag is only changed for Volumes
- in the same Pool.
-- Add PIDOF configuration path and apply to bacula.in
-- Add user supplied patch to add inet_aton() of old Solaris
- systems.
-- Require pools to match before allowing multiple simultaneous
- accesses to same storage resource.
-- Add patch supplied by Martin to correct buffer overrun in
- bsnprintf() with no library snprintf().
-02Dec04
-- Apply user supplied patch that implements No Hard Links.
-- Document Python interface
-- Add hardlink keyword patch supplied by David R Bosso <dbosso@lsit.ucsb.edu>
-01Dec04
-- Fix non-python prototypes in dummy routines.
-- Add python 2.3 to config search list (user submitted patch)
-- Add JobStatus to Python variables.
-28Nov04
-- Add 'python restart' command in Console.
-- Make built-in variables table driven.
-- First cut of Python Events for Bacula. Director only.
- StartJob, EndJob, NewVolume events.
-
-
- Technical notes on version 1.37
- Nicolas Boichat
+ Technical notes on version 2.1
General:
-Changes to 1.37.*:
-26Oct05
- - dvd.c: update VolParts when writing the last part.
-19Oct05
- - configure: add check for dd, remove check for df
- - block.c:do_dvd_size_checks: Check we are writing to a dvd before doing tests
- (reported by David Raine on the list, '[Bacula-users] LTO drive - End Of Volume error').
- - Update bacula-sd.conf.in to use dvd-handler correctly.
- - dvd.c:dvd_write_part: Increase timeout when writing the first part (see the code for
- more details).
-18Oct05
- - Modify .backups command to get a fileset parameter (fix bug #444).
-17Oct05
- - Fix bug when recycling DVD devices (append flag was removed).
- - Add tests for dvd+rw-format in configure script.
- - scripts/dvd-handler: Reformat DVD-RW when needed. This needs dvd+rw-format.
- - Add patch for dvd+rw-tools in patches dir (this should probably be elsewhere).
-16Oct05
- - Remove scripts/dvd-freespace and scripts/dvd-writepart, as they are now
- merged into scripts/dvd-handler. Note: Documentation needs to be updated.
- - scripts/dvd-handler: 'zero' brand-new DVD+/-RW to fix a problem with some
- DVD-writers, thanks to Arno Lehmann for reporting this, and providing the
- way to fix it.
- - new scripts/dvd-handler. Note: it also needs a patched version of dvd+rw-tools.
- - new scripts/dvd-freespace. Note: it needs a patched version of dvd+rw-tools.
- - dvd.c:dvd_write_part: Don't write empty part. (Fix 4GB crossing bug reported by Arno Lehmann)
-14Oct05
- - dvd.c:dvd_write_part: Use part_size and not max_part_size when setting write timeout.
- - dvd.c:do_mount_dev: When checking if the DVD is mounted, do not count ., .. and .keep (needed on Gentoo).
-15Aug05
- - Convert dvd-writepart to Python.
- - Increase delay from 3 seconds to 5 seconds between SIGTERM and SIGKILL when
- killing external programs.
-13Aug05
- - Add gettext macros in autoconf/gettext-macros.
- - Modify how localedir is set in configure.in.
- - Remove setlocale check (useless).
-10Aug05
- - Mark translatable strings in all source files.
-08Aug05
- - Create French and Italian translation files (fr.po, it.po).
- - Add support for translation in configure and Makefiles.
- - Update autoconf/aclocal.m4 so it is automatically created with aclocal
- (Note: autoconf/gnome-macros is not used anymore, it may be removed).
-30Jul05
- - Fix src/lib/bpipe.c:run_program and run_program_full_output to detect if the watchdog
- killed the program, and return an error if it is the case.
-26Apr05
- - Modify parse_config to get a LEX_ERROR_HANDLER as a parameter
- - lex_open_file now returns NULL if the file can't be opened. All calling functions have
- been adapted.
- - Remove set_exit_on_error function
-07Apr05
- - Fix 'unknown device type' problem with DVD devices.
- - Fix crash when there is no media in the DVD drive.
-09Jan05
- - Update the documentation and ReleaseNotes.
-05Jan05
- - Add FreeSpaceCommand in Device (SD configuration file) and implement it.
- - Some modifications (again) on how guessed volume names are handled (now it should work).
- - Part files on the hard disk are removed if they are empty.
-04Jan05
- - Major fixes on how guessed volume names are handled.
- - Minor fix in src/stored/append.c.
- - Replace, when possible, POOLMEM by POOL_MEM in the new code of src/stored/dev.c.
- - New script, scripts/dvd-freespace, which gets the free space available on a writable DVD.
-03Jan05
- - Add WritePartAfterJob directive in Job resource (Director)
- - Add WritePartAfterJob directive in Schedule Resource (Director)
- - Implement these new directives
-02Jan05
- - New function, open_guess_name_dev in src/stored/dev.c, which tries to guess the volume
- name of a mounted device, so the label can be read.
- - New script, scripts/dvd-writepart, which write parts to DVD+/-R(W).
- - Removed WriteFirstPartCommand directive in Device (SD configuration file).
- - Use readdir_r instead of readdir (src/stored/dev.c:open_guess_name_dev).
-01Jan05
- - Add RequiresMount, MountPoint, MountCommand, UnmountCommand directives in Device (SD configuration file).
- - Implement these directives (volumes can now be restored from a manually written DVD).
- - Add WriteFirstPartCommand, WritePartCommand directives in Device (SD configuration file).
- - Implement these directives (DVD writing now works).
- - New function run_program_full_output in src/lib/bpipe.c.
- - Lots of bugfixes and cleanups in the new code.
-29Dec04
- - Add VolParts field in Media table
- - Add MaximumPartSize directive in Device (SD configuration file)
- - File Volumes can now be splitted in multiple files ('parts')
- - Fix SQL error in sql_list while doing 'llist jobmedia'
+08May07
+kes Merge patch from Sergey Svishchev <svs@ropnet.ru> that preserves
+ the original jobb'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
+ reading conf file from a pipe. However, do it with open_bpipe()
+ rather than popen. Not yet tested.
+07May07
+kes Fix an ugly bug where the VolCatBytes were getting updated
+ during a restore.
+kes Implement bconsole memory command that prints current memory
+ usage, plus smartalloc dump.
+kes Clarify some error messages in backup, admin, and migrate.
+kes Shrink label dialog to smaller size.
+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.
+04May07
+kes Prevent door and port files from being restored (mostly
+ Solaris stuff).
+kes Free an unreleased buffer in compat code.
+kes Change console Job name from *Console* to -Console- to eliminate
+ Win32 filename problems. Put Win32 path separator when creating
+ Console file. This fixes bug #846.
+kes Change berrno::strerror() to berrno::bstrerror(). Not yet full
+ implemented.
+kes Pass jcr to crypt_sign_decode because it creates a new SIGNATURE
+ structure.
+kes Define b_errno_win32 on Linux to be zero so that it can be or'ed in
+ to force Win32 error message.
+03May07
+kes First cut strip path. The data should be passed to the FD,
+ but nothing is done with it yet.
+kes Enhance the digest and signature routines in the crypto
+ library to accept a JCR and to use it to print error messages
+ so that they will go in the Job report rather than the daemon's
+ messages.
+kes Simplify some of the verify signature code.
+kes Simplify a few of the alternative returns in the signature
+ code.
+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
+ routines for bat.
+kes Tentative fix for missing digest signature in bug 807.
+kes Correct handle problem in new win32_ftruncate routine.
+kes Convert ua_purge.c and ua_update.c to use new ua class
+ message routines for bat.
+29Apr07
+kes Correct incorrect installation of LICENSE in Win32 installer.
+kes Display LICENSE at the beginning of the Win32 install.
+kes Attempt to correct the need for the png files to be installed
+ for bat.
+kes Reapply my bat.conf install script in qt-console. I think I
+ editted bat.pro instead of bat.pro.in and it was lost.
+kes Apply CentOS patches someone sent me. Checks for /var/run/subsys,
+ the /var/lock/subsys for subsysdir. Also corrects typos in the
+ doc.
+28Apr07
+kes First cut update job.
+kes Correct configure to include qmake of src/qt-console directory.
+26Apr07
+kes Make restore job yes/mod/no print in one command so GUI works.
+kes First cut implementing backup and restore client.
+kes Correct editing in Verify output that caused a seg fault.
+25Apr07
+kes Insure that bat.conf is not overwritten during installation.
+kes Fix important bug in db_sql_query() in mysql.c. It was introduced
+ while I was implementing migration in March 2006 !
+24Apr07
+ebl Cleanup file relocation, using char *RegexWhere instead of
+ char *where + bool where_use_regexp
+kes Update some manpages and add bat manpage.
+kes Make a first cut at converting bacula.spec.in for bwx-console
+ and bgnome-console.
+kes Apply patch from John Goerzen to add hostname as fourth argument
+ to make_catalog_backup script.
+kes Fix typos I introduced into bsmtp.c
+kes Make pm_strxxx() routines handle input of NULL pointer. This
+ is to protect from NULL pointers returned from SQL databases.
+kes Correct typo in bacula-sd manpage as pointed out by John Goerzen.
+kes Add more debug to FIFO code -- fix fifo regression test.
+23Apr07
+kes Implement posix_fadvise in FD, and for reading spool files in SD.
+kes Add thread timer to bnet_connect() to break from OS if wait time
+ expires.
+22Apr07
+kes Update Win32 build to include new files, new symbols, and
+ renamed files.
+kes Implement socket level heartbeat (tcp_keepidle)
+ebl Commit File relocation patch
+kes Make bat have 'make install' target.
+kes Warn during install if old gnome-console binary found.
+kes Warn during install if old wx-console binary found.
+kes Add -8 option to bsmtp command line to add content type utf-8.
+ Fixes bug #809. (Character coding problem in bsmtp).
+kes If < is found in target (from, to, cc) then do not enclose the
+ target in < > in bsmtp. Fixes bug #772 (malformed address).
+kes When printing certain items in dbcheck, stop after 300000.
+ Fixes bug #822. (dbcheck loops).
+kes Incorrect status in Dir after waiting for mount with poll set.
+ Fixes bug #825.
+21Apr07
+kes Extend idea of Prefer Mounted Volumes to mean a volume about
+ to be mounted.
+kes Print waiting to reserve a device every 5 mins.
+20Apr07
+kes Don't call close_part in label.c if tape and relabel.
+kes Don't free volume if busy in close() -- should help with
+ bug 801.
+ebl Fix #824 RunScript bug (After script could be execute twice)
+ Now, Before Script can use RunsOnSuccess and RunsOnFailure options
+ By default (like before) RunsOnSuccess=true and RunsOnFailure=false
+ Add a regression script to test RunScript
+19Apr07
+kes Correct usage of MTIOCLRERR ioctl for clearing persistant errors
+ on Solaris.
+18Apr07
+kes The bgnome-console (gnome-console) and bwx-console (wx-console) are
+ deprecated. No additional bugs will be fixed, and they will be dropped
+ in a future release (probably 2.4.0).
+kes Change name of wx-console to bwx-console to make it more Bacula
+ unique.
+kes Change the name of gnome-console to bgnome-console to make it
+ more Bacula unique.
+14Apr07
+kes Some time in March, a Feature Request with patch from Jorj Bauer
+ <jorj@seas.upenn.edu> was committed by Landon (with my approval).
+ It implements:
+ The ability for the director to validate a Client (FD) CN against
+ an arbitrary set of patterns rather than the hostname, with
+ A new 'TLS Allowed CN' set of directives which are implemented
+ in the Client resource. Then pattern matching is used in place
+ of hostname matching against the Certificate's CN. As an example, we
+ have certificates which (a) use a local CA, and (b) have a CN of the
+ form client_123.
+kes Add new/changed entry points to Win32 build
+kes Create unaccepted-projects for projects that are not accepted.
+kes Simplify locking in the reservations system.
+kes Add more debug code in reservations.
+kes Make sure error condition on reserving a volume is handled correctly.
+kes Correct handling of volume_in_use.
+kes Correct handling of initializing a device.
+kes Move handling of broadcasting releasing a device into release_device().
+kes Correct attaching dcr to dev so that it is only done if device
+ is properly initiated.
+12Apr07
+kes Locking debug level tweaks in SD.
+kes Tweak new Volume code.
+11Apr07
+kes Add exec external-command [wait-seconds] to bconsole. This
+ executes the external-command. Note! normally external-command
+ should be enclosed in double quotes.
+kes Turn the .die command on only if DEVELOPER is defined -- i.e.
+ it should normally be off in a production system.
+10Apr07
+kes Implement die command for SD so that we can force it to dump.
+kes Implement SD lock debug code.
+kes Implement new algorithm for keeping Volume list in SD. It
+ is now owned by the device.
+04Apr07
+kes Implement new code for freeing in use volumes that should
+ resolve if not all, some of the problems of multiple drive
+ tape conflicts described in bug 801.
+03Apr07
+kes Fix gui/bacula-web/images files in svn.
+kes Turn on FreeBSD/OpenBSD code to set EOT model on tape.
+02Apr07
+ebl Fix a bug in batch mode (in string escape)
+kes Correct migration prune SQL typo that crept in in a
+ recent 2.1.x change.
+01Apr07
+kes Move bnet_despool() into class in bsock.c
+kes Modify job report to include director name and Build OS.
+kes Move drop root privilege and check_catalog() before fork.
+kes Add update database scripts (version 9 to 10) to updatedb directory.
+31Mar07
+ebl Check size and age of each file after its backup to see if
+ it has changed during backup, if 'checkfilechanges' is set.
+ The FD will do an extra check (stat(2)) after
+ each file backup. mtime, ctime and size are compared with
+ 'before backup' information. If time or size mismatch, an
+ error message will be generated. You must upgrade FD to use it.
+30Mar07
+kes Make database name and user configurable
+ --with-db-name=xxx --with-db-user=xxx
+kes Add back database type to message.c for debugging.
+29Mar07
+kes Implement dir_sql() which issues an SQL query.
+kes Modify bat medialist to use dir_sql() and do some minor C++
+ formatting as well as eliminating a number of pointers, simplifing
+ the code.
+28Mar07
+kes Fix some of the mtx-changer grep commands for tape label readers.
+kes Convert a number of bsendmsg into the appropriate send/warning/error
+ message class calls.
+kes Suppress the using database message in the .sql command.
+kes Correct an incorrect bnet_tls_client prototype -- patch from Martin.
+27Mar07
+kes Add context menu for floating a window.
+kes Some minor cleanup and name changes in qt-console
+kes Add doing mt setblk 0 in Win32 mtx-changer.
+kes Apply Martin's bug fix to move definition of ENODATA for
+ FreeBSD to bsock.c
+ebl Add a BUSY handler to sqlite to be able to use multi_db = 1 with
+ sqlite2 and sqlite3.
+26Mar07
+kes More pruning cleanup.
+kes Turn on wait_for_drive by default in mtx-changer.
+kes Turn on Batch insert code by default as it now passes regression.
+kes Add ./configure --enable-bat to enable building of Bat.
+ No install yet though.
+25Mar07
+kes Implement a new .sql command for bat.
+kes Implement code to turn off pruning in obtaining the next volume.
+ Pruning is turned off for the status dir command, but turned on
+ for SD requests and for the list nextvolume command.
+24Mar07
+kes Correct Qmsg() that was not updated correctly when committing a
+ previous change (probably the recent TLS patch).
+23Mar07
+kes Write new subroutine is_volume_purged() that explicitly checks
+ if the Volume is purged, and if so marks it as such. This should
+ resolve problems reported about needing to mount twice to recycle
+ volumes.
+kes Rewrite pruning algorithm to do more work in the SQL engine, and
+ to pass a list of JobIds to be deleted to SQL. Also, minimize the
+ amount of duplicated code.
+kes Do volume pruning only for the Media Type desired (reduces pruning time
+ if multiple Media Types are in the same pool).
+kes Implement more detailed info in the Job report for the Bacula version
+ and architecture.
+kes Switch from POOLMEM to POOL_MEM (a real class) in ua_prune.c and
+ ua_purge.c.
+ebl Add bbatch tool to bench database and insert mode.
+ Fix sql quote stuff in batch mode
+ Fix sql stuff for mysql
+22Mar07
+kes Correct problems with am/pm scheduling. Fixes bug #808.
+kes Implement new prunning code that prunes up to 1000 jobs at
+ the same time. The same technique can be applied to a number
+ of other prune/purge subroutines.
+kes Add an insanity check when starting a new tape job to ensure
+ that the tape position has not been changed. If so fail the
+ job.
+kes Fix Win32 build for dlls to add the folllowing:
+ src/lib/bsock.c -- new file with new entry points
+ src/lib/dlist.c -- new entry points
+ src/cats/sql_create.c -- new entry point
+ src/cats/sql_cmds.c -- new DATA item exported
+21Mar07
+ebl batch mode cleanup bscan-test is ok now.
+kes Implement SD code to check length of disk volume before appending.
+18Mar07
+kes Correct return status on db_batch... routines.
+kes Add call to db_write_batch_file_records() to migration code.
+ebl Fix AfterJob timing
+kes Move the checking of the database in initializion of the Director
+ to after we drop privileges. This avoids the need for both root
+ and bacula access to the DB.
+kes Correct a misplaced variable definition in src/filed/backup.c
+kes Correct how the new batch insert db_create_attributes_record()
+ uses the arguments. Caused a seg fault in bscan.
+kes Implement lock() and unlock() methods in DEVICE class.
+ Implement block() and set_block(xx) methods in DEVICE class.
+kes Modify bnet_connect() so that it uses time() to check for the
+ wait time expiring (on some OSes, some system calls may not
+ return immediately).
+kes Modify Verify to obtain the previous JobId when it is actually
+ running rather than at schedule time (as it was in 1.38.x).
+kes Fix src/job.c to handle MaxWaitTime correctly. This should
+ fix bug #802.
+kes When checking pid in pid file, continue running if the pid is
+ the same as ours. This occurs on IRIX after a system crash.
+ Fixes bug #797.
+10Mar07
+kes Extend new GUI API.
+kes Make the ua structure a class, and implement send_msg(),
+ error_msg(), warning_msg(), and info_msg().
+08Mar07
+kes Apply fix from for building wx-console on the Mac from
+ bug #798.
+kes Implement new select mechanism for GUI programs.
+kes Reorganize initialization of stackedWidgets in bat.
+07Mar07
+kes Add updated nagios plugin supplied by Christian Masopust.
+05Mar07
+kes More bat implementation.
+kes File migrate bug with Pool Occupancy using mediaid instead
+ of jobids. Fixes bug #795.
+kes Fix orphaned buffers in filed backup and verify due to
+ crypto buffers not freed during errors. Fixes bug #789.
+kes Extend new GUI api code to tree commands.
+kes Ensure that tree and dot commands check console ACLs.
+kes Permit marking directory with trailing slash.
+kes Allow 20 console connections (instead of only 10).
+04Mar07
+kes Add smartctl call to bacula-sd.conf as an example of getting
+ tape alert info.
+02Mar07
+kes Modify jobq.c to let simultaneous restore jobs run. This may
+ cause them to fail if they cannot get a drive.
+kes Add Client Connect Wait to Storage daemon to permit users to
+ modify the time the SD waits for a FD connection.
+29Feb07
+kes Correct virtual changer check which was backwards. This caused
+ volumes to be unloaded into slots already occupied.
+28Feb07
+kes Apply Command ACL filter to JobId list in restore command.
+kes Correct typeo in var.c patch.
+27Feb07
+kes Don't let Bacula prune File or Job records for the current Job.
+kes Fix variable substitution pad + inc bug reported (with patch)
+ in bug #791.
+26Feb07
+kes Correct SQLite log table index as reported by Luca Berra.
+24Feb07
+ebl fix fifo stuff, bacula tries to rewind the fifo... Thanks to Andreas
+22Feb07
+kes Begin implementing new comm signals for API.
+kes Fix a few places in lib/message.c where the open fd may
+ not be zeroed.
+kes Continue implementing lib/bsock.c (real class). Make jcr,
+ who, host, and port private. There are new methods to access
+ them for non-class use. This required touching a number of files.
+21Feb07
+kes Add LANG=C to autoconf/randpass so it works with languages other
+ than English. Fixes bug #788.
+20Feb07
+ebl Revert ClientRunBeforeJob to old position as in 1.38.X.
+ This fixes bug #780
+ You will not be able to generate Include/Exclude list any more.
+ It will be fixed soon.
+ If you want to use this, you can apply
+ trunk/bacula/patches/testing/clientrunbeforejob_can_generate_include_exclude_list.patch
+19Feb07
+kes Restore of sockets created false error messages because Bacula
+ no longer restores sockets, but the code was still trying to
+ set the attributes on a non-existent file. Reported by a user.
+ebl finish RecyclePool feature
+ Media will takes Pool.RecyclePool
+ when moving from Scratch to a Pool or when user will do
+ update volume=xxx frompool
+ To use it, add RecyclePool = aPool to your Pool resource
+ Pool {
+ Name = Default
+ RecyclePool = Scratch
+ ...
+ }
+ TODO: update manual
+kes Expand new BSOCK class adding signal() and new BNET signals.
+kes Begin enhancing the dot commands adding a new API function
+ that returns more information and will make it easier
+ to interface to the Director from a program.
+18Feb07
+kes Make DEVICE fd private. Its new name is m_fd, and can be
+ obtained with dev->fd() outside the class. This is the
+ first of many DEVICE members to be made private.
+kes Implement Michael Renner's idea on having a virtual disk
+ changer. I made some minor modifications (e.g. I did not
+ implement the Virtual Changer directive, but simply set
+ the Changer Command to an empty string.
+17Feb07
+kes Implement a BSOCK send() method that writes the whole record
+ in a single write() request rather than in two.
+ebl add update volume=xxx recyclepool=yyyy
+ volume takes recyclepool from pool when using update volume=xxx from pool
+16Feb07
+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.
+13Feb07
+kes Apply Eric's ClientRunScriptAfter patch to 2.0 and 2.1.
+ebl Use btime_t instead of uint64_t in media patch.
+11Feb07
+kes Optimize the use of the database a bit in the Status dir command.
+ Only open it when needed, ensure that if any previous database
+ was opened, it is closed.
+10Feb07
+kes Correct VolCatBytes bug from media patch.
+kes Apply patch from bug #612 by Rudolf Cejka to speedup pruning
+ in the case of orphaned records.
+kes Modify dbcheck to handle orphaned JobMedia, Path, Filename,
+ and File records in 300K chunks to be more efficient. This
+ idea came from Juan Luis Frances (if I remember right).
+kes Apply Eric's scratch patch that moves a purged Volume to
+ the RecyclePool. Question: how is RecyclePool set? what
+ happens to the ScratchPool?
+kes Apply Eric's media patch that collects read/write media
+ times as well as byte counts. This patch requires a
+ simultaneous upgrade of the DIR and SD. Note, there
+ should be some way to turn off timing. I'm not sure
+ times are in Bacula units.
+kes Apply Eric's batch-insert patch.
+09Feb07
+kes Update projects list.
+08Feb07
+kes Implement Include/Exclude file lists in FD as dlists using
+ the new dlistString class. This permits efficiently having
+ large include/exclude lists and completes project Item 25.
+kes Fix dird/ua_cmds.c so that a cancel command checks if the
+ console is authorized to cancel the job. This fixes bug
+ #767.
+kes Modify SD so that the VolCatJobs medium record is updated
+ at the beginning of a Job rather than the end. This
+ fixes bug #775 where exceeding MaxVolJobs caused jobs
+ to fail.
+kes Added a mutex around getting and setting Volume information
+ so that multiple simultaneous jobs will single thread.
+07Feb07
+ Switch to using Subversion
+kes Remove src/pygtk-console/ from configure
+06Feb07
+kes Delete src/lib/btree.c from win32 build, then add rblist.c
+ plus the entrypoints.
+kes Apply patch supplied that corrects debug print
+ in canceling jobs for max run time. Supplied as
+ part of bug #621, which was previously fixed.
+05Feb07
+kes Test on job_canceled() and sd_msg_thread_done inside
+ loop starting the message thread to avoid a race condition.
+ Fixes bug #771.
+kes Remove rl_catch_signal from console.c as it conflicted
+ with the header definition. Fixes bug #765.
+ebl Fixes bug #766 about RunsOnClient = Yes (case sensitive)
+04Feb07
+kes Clarify some stored/acquire messages to indicate if the
+ problem is with read or append.
+02Feb07
+kes Fix memory leak with storage ids in cats/sql_get.c
+kes Terminate watchdog earlier to avoid reference to released
+ memory -- reported by Jason Austin.
+kes Move closing the database from jobq.c to the director daemon
+ termination routine. This fixes memory leaks for shadow jobs
+ (i.e. migration jobs).
+kes Free up the unique jobid chain items in migrate.c. This fixes
+ a memory leak problem.
+kes Convert some ugly looking for statements to use foreach_alist
+ in findlib/find.c. This will facilitate converting the structures
+ to use dlist (for large include/exclude lists).
+kes Fix a bug in the btree.c and btree.h routines, then rename them
+ rblist and add them to be built in src/lib. Include some new
+ methods written by Rudolf Cejka that make the code more readable
+ (hides some of the ugly casting).
+kes Add set_next() and set_prev() methods which make the code much more
+ readable. Also add a new dlistString class that facilitates storing
+ strings in dlists. To be used in the large include/exclude lists.
+kes Make some trivial modifications to lib/tree.h that use rblist
+ rather than dlist for storing the tree links. This was suggested
+ by Rudolf Cejka. The result of this is that the restore tree now
+ uses red-black binary trees rather than simple linked lists. This
+ should give rather dramatic speed improvements for directories
+ contining large numbers of directories/files (more than 10000).
+28Jan07
+kes Fix maxruntime bug #621.
+26Jan07
+ebl Implement the include JobID in spool file name project.
+kes Reorder projects file in order determined by Jan 2007 vote.
+kes Implement item #12 on project list -- quick release of FD by
+ the SD.
+kes Fix open of SQLite3 db where user does not have write permission
+ so that DIR does not crash. Fixes bug #761.
+25Jan07
+kes Add back missing @ in Win32 Makefile.
+kes Change 'Device not configured to autolabel' from INFO
+ to WARNING.
+kes Fix jobq.c to restart failed jobs when Reschedule Times = 0
+ which should restart an indefinite # of times.
+kes Fix configure --help to print --with-mysql[=DIR]. Same for
+ other DIR specifications.
+23Jan07
+rn Fix msvc build problems. Fix bacula.dll exports for msvc build.
+ Fix path quoting in SQLite scripts.
+ Fix problems with SHGetFolderPath.
+19Jan07
+kes Create patches/2.0.1-restart.patch. Fixes bug #755.
+18Jan07
+kes Fix Job restart on error bug that promotes an Inc to a Full
+ backup. This should fix bug #755.
+kes Add qt-console and first cut of code.
+
+Version 2.0.1
+12Jan07
+kes Fix Bacula->Documentation link on Win32 to point to index.html
+ instead of bacula.html. Fixed bug #750.
+kes Return JobId in db_get_job_record() when JobId==0. This should
+ fix bug #741.
+kes Do not release source pointers when restarting a failed job.
+11Jan07
+kes Add dynamic dll entry point for SHGetFolderPath to Win32 code.
+ This *should* fix bug #747.
+kes Modify winbacula.nsi to substitute with g bin_dir_cmd. Should fix
+ bug #742.
+09Jan07
+kes Modify USTORE constructor to set an empty store_source string,
+ and don't copy the store_source string in a cancel. Hopefully
+ this will fix Arno's seg fault, bug #744.
+kes Add back code to disable conio in configure. Fixes bug #743.
+kes Correct the Options scanner in the FD to correctly handle
+ SHA1 option, which was eating the next option. Reported by
+ Sebastien Guilbaud.
+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
+