Technical notes on version 2.1
General:
+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 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
...
}
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
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
+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.