Kern Sibbald
General:
+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 ...
+- Remove old regex code from baconfig.h
+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.
+- 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) released 02MayO6
+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) released 14Apr06
+15Apr06
+- Correct Makefile bug found by Dan Langille.
+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
+06Apr06
+- 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.
+
+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.
+
+
+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.
+
+09Mar06
+- Use John Kodis' edit_with_suffix code to edit VolBytes.
+- Backport some fixes for acquire.c. Most importantly, to explicitly
+ have a reserved_device flag for acquire_for_read(). Hopefully
+ this will correct the remaining issues with failed restores holding
+ a drive.
+- Add a job_canceled() check in SD command loop.
+
+Release 1.38.6 beta3 4Mar06
+04Mar06
+- The po files should now be current.
+- 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 from John Kodis <kodis at comcast.net>.
+- 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 released 17Jan06:
+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
+- Make db_lock() mutex error fail the job rather than abort
+ Bacula. Canceling the job caused the mutex to fail.
+- 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.
-Changes to 1.38.3:
Beta release 23Dec05:
22Dec05
- Add OPENSSL_INC to console dependencies, lib dependencies, and
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
+- 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
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"
+ 'list nextvol days=xx'
or
- "status dir days=xx"
+ '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.
- Add Solaris ACL detection in configure.in as supplied by
Attila Fulop.
12Nov05
-- Implement "autochanger drives" protocol so that Dir knows
+- 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.