From: Kern Sibbald Date: Thu, 16 Jul 2009 09:25:16 +0000 (+0000) Subject: Update X-Git-Tag: Release-3.0.2~47 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=8b7e5457e873f6b999c32755dc15620675edf7c2;p=bacula%2Fdocs Update --- diff --git a/docs/techlogs/2007/technotes-2.1 b/docs/techlogs/2007/technotes-2.1 new file mode 100644 index 00000000..371bf94d --- /dev/null +++ b/docs/techlogs/2007/technotes-2.1 @@ -0,0 +1,992 @@ + Technical notes on version 2.2 + +General: + +Release Version 2.2.0 +09Aug07 +kes Apply a second doc patch from Marc. +kes Apply a doc patch from Marc Schiffbauer that + improves the tips section that discusses how to setup multiple + simultaneous jobs. +08Aug07 +kes Update bat README file. +kes Apply patch from Allan Black that + corrects a typo in the Recycle status check in db_find_next_volume(). + This will probably fix a number of annoying problems with multiple + Recycled volumes. +kes Modify most of dird/msgchan.c to use bsock class calls rather than + bnet calls -- no functionality change. +07Aug07 +kes Modify the Verify output to specify if files are missing on + the Volume(s) or disk. Fixes confusion in bug #916. +kes When more than one Volume is read in a migration job, the last + Volume bytes reported are from the last read volume rather than + the last written volume. Fixed. This fixes bug #910. +kes Fix display of Recycle flag after update volume=foo recycle=yes. + It previously printed New Recyle flag is: no. This fixes bug + #917. +06Aug07 +kes Correct seg fault when switching tape drives during restore. +kes Commit uid_gid_name.c (replacement for idcache.c), but will not + be used until after 2.2.0 release. +04Aug07 +kes Remove fnmatch() in SD that permitted wild card specifications. + This fixes bug #914. +31Jul07 +kes Fix %g in filename returned by SQL for browse tree reported by + Dirk. +kes Fix configure so that it puts config.out in the cwd rather than + in src/qt-console +kes Attempt to fix the locking problem reported by Eric in bug #906. +kes Make berrno class to leave errno unchanged after constructor call. +kes Make bnet_server use the heap rather than the stack to allocate + its socket fd pointers to avoid a crash at termination. Problem + reported by Ryan Novosielski and bugs pointed out by Martin Simmons. +30Jul07 +kes Create new depkgs and depkgs-qt separating the qwt out of depkgs + and putting it in depkgs-qt along with Qt4.3. +29Jul07 +kes Rework code in acquire.c that switches drives for reading when + the Media Type does not match. This should fix bug #906 +28Jul07 +ebl Fix a director segfault during job setup #907 +kes Correct seg fault in postgresql when first operation returns no + rows. Fixes Dirks File browser problem seg fault with bat. +25Jul07 +kes Apply patch from Felix Schwarz that allows + building wxconsole on Fedora 7 with wxWidgets 2.8 (it works with + 2.6 as well). +24Jul07 +kes Implement PopUp YES/NO dialog for bat. +23Jul07 +ebl Fix a compilation bug when using #define BACL_WANT_NUMERIC_IDS +22Jul07 +kes Correct RunScript to terminate job in FD on failure. +kes Change abort_on_error and AbortJobOnError to fail_on_error + and FailJobOnError in RunScripts. +kes Minor tweaks of code formating in RunScripts, principally to + avoid depassing 80 columns. +21Jul07 +kes Eliminate one #ifdef Win32 in bsmtp +kes Implement grow tool to grow a file for testing very large databases. +kes Add big-vol-test to test Bacula seeking with > 5GB. +Release 2.1.28 beta +19Jul07 +kes Modify find_next_volume() to return all values in Media record. +kes Ensure that we keep Recycle Pool when moving Scratch volumes. + +Release 2.1.28 beta +18Jul07 +kes Update Release notes +17Jul07 +ebl fix a bug in get_scratch_volume() report by Andreas Helmcke + Warning, in previous beta version, all media get from scratch keep their + old retention. +16Jul07 +kes Tweaked Win32 installer to remove temp conf files at uninstall time. + This should fix bug #842. Made a note to look at removing the temp + files at the end of the install. +kes Add ability to mount and unmount a file device providing it is + marked as being removable and has the appropriate mount and unmount + commands defined in the Device resource. This fixes bug #830. +kes When applying a storage override, release all previous storage + definitions rather than just prepending the new storage. + This should prevent a good deal of confusion. +14Jul07 +kes Implement ./configure search for qwt libraries. +13Jul07 +kes Disable posting the WM_CLOSE message in KillRunningCopy of the + Win32 FD. This should fix bug #893. +kes Remove an unnecessary beep in Win32 init code. +kes Update copyright dates in Win32 executable about boxes. +kes Replace the FSF copyrighted getopt.c and getopt.h in the Win32 + code with a BSD getopt.c and getopt.h. +kes Remove sched.h from the Win32 compat directory -- not used. +kes Remove the Exit menu item from the Win32 tray monitor. If you really + need to shut it down, do it through the services panel or the command + line. +kes Remove some inappropriate Bacula FSFE copyrights. +ebl Tweak status client=xxx to be more easy to parse (more like in 2.0.x) +kes Fix regress config non-portable test as pointed out by + Florian Heigl +kes Fix PSCMD for HP-UX in configure.in to have proper syntax. + as pointed out by Florian Heigl +12Jul07 +kes Fix missing rctx. prefixes on the Darwin code in src/filed/restore.c + Reported by Frank Sweetser. + +Release 2.1.26 beta +12Jul07 +kes Fix client-only build. +kes Integrate client-only fixes for bsys (initgroups) and conio from + Sergey Svishchev for the AIX platform. +kes Make arguments to get_scratch_volume() in same order as other + such calls. +kes Rework the prune_volumes() subroutine so that after purging and + no volume found in desired pool, it will check for a scratch + volume. This prevents recycling the whole scratch pool. +kes Add code to status storage to print boffset_t (largefile support). +11Jul07 +kes Move qwt (Graphics libarary for Qt4) to depkgs. +kes You now need a --with-qwt= to be able to build bat. +kes Update src/win32/cats/bacula_cats.def to include the new + db_get_query_dbids() call on Win32. +07Jul07 +kes Correct a problem when selecting a scratch volume and moving + it to another pool that lost some columns. +kes Tweak some code in ua_update.c to use POOL_MEM instead of POOLMEM. +kes Enhance Autochanger error messages to include Volume and device name. +kes Rework prune_volumes() code to take account of InChanger flag, + and to handle recycling volumes going to the Scratch pool and + current pool because the RecyclePool directive. +kes Implement a better and more efficient db_get_query_dbids() to + handle creating and passing back a list of DBIds. + +Release 2.1.24 beta +03Jul07 +kes Start work on new more efficient DBId subroutine. First use + will be for recycling volume to Scratch inchanger. +kes Increase number of JobIds in pruning from 1000 to 10000. + This to be replaced by above routine. +kes Begin implementation of building Qt4 on Win32. +kes Correct typo in fix I added for bad TLS shutdown. +kes Pull 2.0.3 patches into patches directory. +kes Update Release notes. Include qt-console in line count. +kes Update Projects file. +30Jun07 +kes Integrate patch from Sergey Svishchev that fixes + bug in migration code where a job that spanned two volumes + was migrated twice. +29Jun07 +kes Implement new BST_DESPOOLING blocked state. Change from locking + during despooling in SD to blocking. This means that other threads + can work with the device structure, in particular the reservations + system while despooling. +28Jun07 +kes Fix return in reservation message queue that missed clearing + the jcr lock (implemented 26Jun07 below). +kes Rename a number of dev methods to make locking function names + a bit clearer. +kes Document locking in lock.c. Move lock structures to new file + lock.h. +26Jun07 +kes Move reservations message lock to lock jcr only this + fixes bug #861. +kes Move main SD locking code into lock.c (new file). +kes Update Win32 build to include lock.c + +Release 2.1.22 beta +26Jun07 +kes Dirk committed the qwt library code for drawing graphs in bat. +kes Tweak install of qwt so that it is integrated with ./configure. +25Jun07 +kes Fix HAVE_BATCH_INSERT to be HAVE_BATCH_FILE_INSERT, pointed + out by Eric (my typo). +ebl Fix configure.in to get batch mode enable +kes Return correct string from authenticate.cpp in bat when connecting + to Dir. +kes Apply patch suggested by Frank Sweetser to fix bug #888 -- + spurious line drops when using TLS. +kes Do not file reparse points when restoring a file that already + exists -- Win32. +24Jun07 +kes Implement Windows reparse points -- similar to directories, but + we do not descend into it. This is a first cut. They seem to + be backed up, but restore is not yet tested. +kes Remove restore_blocking in tls code when shutting a socket to leave + it in blocking mode. Hopefully this will fix the encryption bug + reported by Frank Sweetser. +kes When opening a file for backup, tell the OS that we are going to + read it sequentially -- optimization. +kes Change variable names in authenticate_director() to not conflict + with member names in bat. Caused great confusion with compiler, + but no warnings. +23Jun07 +kes Queue openssl error messages in case of comm problem. +kes Do shutdown() call if socket terminated. +kes Remove some duplicated code in tls.c +kes Move more of the bsock member variables into private and access + them with methods. +kes Add Frank Sweetser's tls-test to the regression suite. +22Jun07 +kes Add Swedish sv.po file +21Jun07 +kes Don't print clock skew message in FD if less than 3 seconds diff. +kes Add a bit of VSS info to status client. +kes Implement a first cut of Vista VSS, using Win2003 code. + +Release: 2.1.20 beta +20Jun07 +kes Fixed bug #886 (multidrive autochanger: SD doesn't use drive with + loaded tape but uses first drive). +kes Fixed bug #807 Restore encrypted backup failed on Windows 2003 + This was indeed a Win32 issue. +19Jun07 +kes Simplify search of autochanger for in-use Volume. +kes Fix exit condition of check for in-use volume. kes Remove + inappropriate my_postgresql_free_result() in db_close() + routine. +kes Fix bad return in FD when encryption signature not found. + Probably caused a crash. +kes Inhibit missing encryption signature error messages for + file types where no signature computed. +kes Correct inverted check on autochanger in reservation system. +kes Tweak debug code in autochanger reservation. +18Jun07 +kes Add some additional locking in the cats directory in subroutines + that modify packet variables called from batch insert. +kes Rework how dcrs are allocated. new_dcr() can now be called + with an existing pointer, and it will simply clean it up. + This allows the reservation system to test various different + devices, and will permit easy device changes. +kes A bunch of changes all over to handle new new_dcr() calling + sequence. +kes Work more on the Volume management in the SD. Remember Volumes + for tape drives and for autochangers (even virtual disk changers). +kes When looking at the Volume list to reserve a drive, handle + autochanger names correctly by interating through the changer + devices. Also call the Director to see if a Volume is suitable + for the current job. +kes Fix some bugs in bscan. Make sure all media records are written. + Make sure that valid JobMedia records are written for disk files. + Previously they were completely wrong. +kes Move source tar files for depkgs-mingw32 to www.bacula.org so + that the URLs don't change and so that the developers will all + work off the same copy. Rebuild from scrach. +kes Upgrade Win32 SQLite3 from 3.3.8 to 3.3.17. + +Release: 2.1.18 beta +16Jun07 +kes Fix seg fault in FD from incorrect digest size. +kes Fix argument to non-OpenSSL crypto.c subroutine. + +Release: 2.1.16 beta +16Jun07 +kes Remove a few malloc()s from the encryption code. +kes Use the class calls to bsock in filed/backup.c and restore.c in + place of the old bnet_xxx code. +kes Implement code that does an on the fly calculation of the + signing digest during restore of encrypted files. It makes + a best guess at the algorithm, and if it is not correct, will + then revert to the old code which reads the file after it is + restored. +kes Implement at least one missing crypto stream in stream_to_ascii() +kes Apply patch from William that fixes bug + #877 where a reload with bad syntax causes Dir to exit. + +Cut: 2.1.14 beta (not released) +14Jun07 +kes Do not free a volume on a tape drive until another volume is + mounted and read, or the autochanger unloads the volume. + This should help the SD re-use volumes that are already mounted, + and should fix bug #886. +kes Apply patch from user brettedgar that allows gnome2-console include + the OpenSSL libraries, and hence work with SSL. Fixes bug #885. +kes Apply patch from Lucien Weller that fixes day of week calculation + because of DST flag problem. Fixes bug #887. +10Jun07 +kes Move find_next_appendable_volume() to after acquiring a valid device + in reserve.c. This fixes bug #864 -- confirmed by reporter. +09Jun07 +kes Unable to reproduce bug 872. However added additional testing for + integer. +kes Bug #874 resolved by documenting SQLite limitations. +kes Bug #882 resolved by documenting mtx-changer script for new drive code. +kes Bug #881 resolved by removing typo in mtx-changer script. +kes Made Frank Sweetser's wiki the official Bacula wiki with his + approval. Added a link to the wiki on the web page, and implemented + a backup from http://paramount.ind.wpi.edu +08Jun07 +kes Fix update allfrompool to pass pool name. +07Jun07 +kes Convert to pure GPL v2 license. +kes Fix sscanf problems reported by Peter Buschman that caused + a bus error on Solaris. +kes Rework (simplify) the select prompt in bat. +kes Move get_jobid_from_tid() into lib and create a + get_jcr_from_tid(). +kes Use get_jcr_from_tid() to conver all tls Emsg() to Jmsg(). This + should definitely fix the problem of lost error messages in the + encryption code. +kes Remove over zellous addition of FSFE copyright in a few eggxxx files. +kes Eliminate tcpd.h from the project. Enclose the #include from the + library with extern C ... +kes Add print of signal name when a signal is trapped. + +Release: 2.1.12 beta +04Jun07 +kes Fix a seg fault in the PostgreSQL driver dereferencing a NULL pointer. +03Jun07 +kes Implement SQLITE3_INIT_QUERY in version.h that can do an initial + query for SQLite3. Use it to set PRAGMA synchronous = OFF. This + makes SQLit3 run 30 times faster, though a bit less safe. +kes Implement --with-batch-insert in configure and detection of thread + safe libraries. It is on by default, but turned off if no thread + safe library (e.g. SQLite 2) is available. +02Jun07 +kes Fix Bacula PostgreSQL buffer overruns. +kes Do better checking for NULL results returned from PostgreSQL; + implement retry for failed queries; clear results buffer after + failed query. Hopefully this will correct the PostgreSQL failures. +01Jun07 +kes Implement algorithm to handle only one appendable volume with + Prefer Mounted Volumes = no. +kes Fix a Bacula PostgreSQL bug dereferencing a NULL pointer + returned from a query. +kes Make volume lock recursive. +kes Implement an additional volume reservation algorithm that + starts by considering all reserved volumes then uses the + old brute force algorithm of searching the resources to + find a suitable device. +kes Add new reservations debug code and refine the old code. +kes Update the win32/dll/bacula.defs file. +29May07 +kes Tweak reservations algorithm to permit a few more cases, i.e. + volume reserved, but on different drive, ... +kes Enhance SD status to include Pool and Media Type for drive in a + more readable format (a bit longer). +kes Fix PostgreSQL double free. +28May07 +kes Minor refactoring of restore decryption code. +kes Add code to smartall.c to detect double free of a buffer. +27May07 +kes Add < > around %r in from field on mail command of bacula-dir.conf.in + so that bsmtp will create a correct email address (mailbox only). +kes Modify 'memory' command so that the buffers are listed as 'In use' + to avoid confusion with Orphaned buffers. +kes I reworked the OpenSSL include/lib flags to be handled in + the standard Bacula way, which should fix bug #863 concerning + non-standard OpenSSL libraries. +26May07 +kes Implement Help Browser window for bat. +kes Fix reload bug that reset StorageId to zero. +25May07 +kes Fix TLS #ifdefing when TLS turned off. +kes Ensure that when labelling a tape with Slot=0 that InChanger + is not set. +kes Use DISTINCT to make MySQL and PostgreSQL uar_list_temp query + the same. +kes Add StartTime to final uar_sel_jobid_temp query so that we can + add DISTINCT (required by PostgreSQL). +kes Implement BSOCK authenticate_director() method. Eventually will + authenicate all daemons. +kes Move several more functions into the BSOCK class. +24May07 +kes Add code to tell the OS that we no longer need a cached + file that we were reading. In findlib/bfile.c. Also, + only cache files that we are reading. Thanks to + Tobias Oetiker for the idea. +kes Tweak to bsmtp to eliminate compiler warnings on Win32. +kes Implement script to automatically generate cats and dll .def + files for Win32 dll. +kes Update README.mingw32 to include new .def file generation. +kes Correct typo in UTF-8 error message as reported by: + jhernandez +kes Add additional sm_check() code on debug level 1. +kes Set default debug level to 1. +kes Trap SIGABRT in attempt to get traceback. +23May07 +kes Reduce bat connect timeout from 30 to 15 seconds. +kes More restructuring and implementing BSOCK class in place of + old bnet.c code. +kes Remove a few unnecessary malloc() tests in crypto code. +kes Turn off crypto calls for > 128 bits in crypto.c if HAVE_SHA2 + not defined. Bug reported by Allan Black +kes Remove duplicate HAVE_CRYPTO definition in config.h.in +22May07 +kes Fix Verify InitCatalog mysql_escape_string() trashing memory. + Make buffer bigger. +kes Fix Verify InitCatalog. The attributes were not pointing to the + correct saved location. +kes Implement message callback so that GUI is sure to get all + daemon messages. Currently displayed in a dialog in bat. +kes Ignore SIGUSR2 (Bacula timer) in bat. +kes Apply regress patch from bug #859 to allow regress to work + with Solaris compiler. +21May07 +kes Begin adding TLS support to bat. +kes Apply UTF-8/16 patch from Yves Orton to + clean up lex.c and make it more readable. +20May07 +kes Move more bnet functions into the BSOCK class. +kes Fix tray-monitor by not requiring a timer interval in bnet_connect() +kes Complete change of berrno strerror() method to bstrerror() + +Release: 2.1.10 beta +18May07 +kes Cleanup incorrect email addresses in bsmtp. +kes Make bat display initial messages rather than discard them. +16May07 +kes First cut of adding .mod to the run command. +kes Implement auto display of messages in bat. +kes Enhanced preferences to allow all Bacula output to be + displayed in bat. +15May07 +kes Try to make bsmtp date routines more generic. +kes Fixed bug #856 autochanger documentation. +kes Rework bsmtp date editing for Win32. This fixes bug #854. +kes Add new cats entry point so Win32 builds. +14May07 +kes Attempt to fix bsmtp date editing on OSes without %z editing. + Fixes bug #854. +kes Do better checking for the MySQL 64 bit libraries looking for both + .a and .so libraries. +kes Add a kludge for Ubuntu's non-standard locations for MySQL -- allow + /usr/include/mysql/mysql.h AND /usr/lib/... rather than /usr/lib/mysql/... +kes Require the thread safe version of MySQL during configure. Thanks + to Andre Noll for pointing this out. +kes Ensure that calls to find_jobids_from_mediaid_list() check count before + continuing in migration code. +kes Apply implementation of tray-monitor font derived from gnome-console + submitted by Andreas Piesk +13May07 +kes Eliminate important memory loss in SQLite +kes Fixed the batch insert MySQL thread specific data that was not + being freed. See cats/mysql.c:db_thread_cleanup(). +kes Fix restore before command. +kes Convert old hdr.name to name() in a few places. +kes Implement update jobid command. +kes Return all time_t dates in db_get_job_record() +kes Stop watchdog in SD earlier. +kes Put Pool just after Storage in please mount message. +kes Fix pointer usage bugs in Verify InitCatalog pointed out by + Eric. +12May07 +kes Update the po files. +kes Fix Verify InitCatalog by making it cache attributes. +11May07 +kes Change name bacula-bat to bat for man 1 page to correspond to + Makefile. +kes Check for client and store NULL pointers in status command. This + fixes bug #845. +kes Fix non-ssl build so that it works (add JCR *jcr to crypto structures). +kes Fix sign extended editing of %p. +kes Clean out a little old #ifdefing in cats/mysql.c +10May07 +kes If time diff between DIR and FD is more than 600 seconds convert + INFO message to WARNING. +kes Implement heap size display in status for all daemons. +kes Attempt to fix MySQL db open memory loss (not successfull). +kes Don't set SIGKILL and SIGSTOP neither can be trapped. +kes Eliminate memory loss in MySQL (possibly other SQLs) during + Query. This looks like a MySQL but but by doing extra releases, + the memory goes away. This should fix bug #847. +09May07 +kes When backup fails, cancel SD before waiting for sd termination. +kes If SD is waiting for FD to connect during cancel, wake up the + thread. +kes Fix fsf code so that errno is correctly reported. +kes Apply migration patch (with changes) from Sergey Svishchev +08May07 +kes Make lack of Pool directive in Job an ERROR_TERM rather than FATAL + so that Bacula doesn't later stumble into a seg fault. +kes Use the term Restore Client in the restore Job report. +kes Merge patch from Sergey Svishchev that preserves + the original job's FileSetId. +kes Merge patch from Sergey Svishchev that implements + spooling in migration jobs. Not yet tested. +kes Merge patch from Jorj Bauer 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 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 new 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 + 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 -- scheduler problem. +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 diff --git a/docs/techlogs/2008/RN-2.2.0 b/docs/techlogs/2008/RN-2.2.0 new file mode 100644 index 00000000..45d3fcf4 --- /dev/null +++ b/docs/techlogs/2008/RN-2.2.0 @@ -0,0 +1,172 @@ + + Release Notes for Bacula 2.2.0 + + Bacula code: Total files = 520 Total lines = 195,550 (*.h *.c *.in) + 82 new files, 41,221 new lines of code, 208,380 lines of change from 2.0.3 + +This Director and Storage daemon must be upgraded at the same time, +but they should be compatible with all 2.0.x File daemons, unless you +use some of the new features that affect the FD. In other words, you should +not have to upgrade all your File daemons when you upgrade. There is +no database upgrade needed from version 2.0.x to 2.2.0. + +Areas requiring caution or testing: +- You must have the thread safe version of MySQL client libraries loaded + to build with MySQL enabled. +- Volumes are pruned only when absolutely necessary -- this may cause + your database to grow compared to prior Bacula versions. +- Solaris door and even port files are no longer restored (equivalent + to what we do with sockets). +- SQLite is no longer supported for Solaris -- it fails too often with + bus errors. SQLite3 should work on Solaris. +- The default setting for SQLite3 is now 'PRAGMA synchronous=OFF'. + This makes it run 30 times faster, but increases the possiblity + of a corrupted database if your server shuts down unexpectedly. + The default behavior can be changed in src/version.h +- Restore on Win32, and in particular on Vista is untested. Please + test before relying on it. It should backup and restore reparse + points. +- Win32 servers are untested, and very likely not to work. + +The major new features are: +- Much faster insertion of attributes (somewhere around 10 times), + many thanks to Eric Bollengier and Marc Cousin. +- First release of bat (Bacula Administration Tool). Note to build + bat you must explicitly enable it on the ./configure line, you + must have the Qt4 version 4.2 or later libraries loaded, the qwt + (Qt Graphics) package loaded, and qmake and the other Qt4 tools + must be available. Most of the implementation was done by Dirk Bartley. +- Red/Black restore in memory tree (500 times faster loading). +- The Regex Where code to allow easier relocation of restored files + thanks to Eric. +- Socket level heartbeat for all connections (untested). +- posix_fadvise() use in the FD to improve performance reduces + swapping due to opening/reading lots of files. Win32 equivalent + implemented. +- Much improved Volume reservation code that should eliminate most + conflicts experienced in multiple drive autochangers. +- Simpler locking in the SD in the reservation system. +- Detection of file size/date change during backup if enabled. +- New Recycle Pool feature -- thanks to Eric. +- Efficient implementation of very large include/exclude lists. +- Volumes are no longer pruned during 'status dir' +- Pruning is now more efficient, and if a Volume is purged, + during pruning, it is immediately discovered. +- License is now GPL v2 without modifications, fix a few copyright + mistakes made when adding FSFE copyright notice. + +New ./configure options: +- --enable-bwx-console +- --enable-bat +- --with-qwt= +- --with-db-name= +- --with-db-user= +- --enable-batch-insert + +New bconsole commands: +- exec +- memory +- update recyclepool +- .sql +- .api +- .pwd (in restore tree) +- restoreclient (keyword) +- backupclient (keyword) +- regexwhere (keyword) +- update jobid (new command) +- recyclepool (keyword) + +New directives: +- Heartbeat Interval (bconsole.conf) +- Heartbeat Interval (bacula-dir.conf in Director, Client, Storage) +- TLS Allowed CN (bacula-dir.conf in Client) +- Regex Where (bacula-dir.conf in Job) +- Strip Prefix (bacula-dir.conf in Job) +- Add Prefix (bacula-dir.conf in Job) +- Add Suffex (bacula-dir.conf in Job) +- Recycle Pool (bacula-dir.conf in Pool) +- FailJobOnError (bacula-dir.conf in RunScript) +- CheckFileChanges (bacula-dir.conf in FileSet) +- StripPath (bacula-dir.conf in FileSet) + +Other features or bug fixes: +- Fixed bugs: 916, 910, 917, 914, 906, 907, + 842, 830, 893, 861, 888, 886, 807, 877, 872 + 885, 887, 864, 874, 882, 881, 863, 859, + 856, 854, 845, 847, 846, 809, 772, + 822, 825, 824, 808, 802, 797, 798, 795, 789, 791, + 788, 780, 763, 782, 612, 767, 775, 621, 772, 764, + 766, 621, 761, 755, 750, 741, 747, 742, 744, and 743. +- Configure bat with --enable-bat. Define qwt libraries with + --with-qwt=. See Installation chapter of manual for details. +- Create a depkgs-qt package that has both Qt4 and qwt, which are + needed to build bat. Most modern Linux systems will have both + these packages in the distro. +- Storage overrides delete all previous storage definitions instead + of prepending. +- One should be able to mount and unmount removable devices if the + Device resource has Removeable Media set and the mount and unmount + directives are defined. +- ./configure will do a better job of searching for qwt libraries. +- The Win32 version can no longer be shutdown from the tray monitor. + Use the command line or the Services panne. +- Keep prune_volumes() from pruning the whole Scratch pool. +- More debug output in status storage. +- Correct moving a Scratch volume from pool to pool (some + critical columns were lost). +- Different locking in reservations and despooling systems, + which means more micro-locking and less macro-locking, which + should give a lot more concurrency at the expense of slightly + (<0.1%) more overhead due to more locking/unlocking, but + concurrent jobs should run much faster. +- Additional drive reservation algorithm that should solve a lot of + the problems experienced with multiple drive autochangers. +- Storage daemon status command enhanced to more clearly show Volume, + pool and media type when a job is waiting. +- Made bsmtp work with more strict SMTP servers. +- Detect doubly freed buffers in smartall.c +- wx-console renamed to bwx-console (Fedora request) +- gnome-console renamed to bgnome-console (Fedora request) +- Migration preserves original job's FileSetId +- Spooling implemented for migration jobs. +- Config files can be read through a pipe, by specifying a leading | + in front of the configuration path/filename. +- New memory command (bconsole) that will print the current Director's + memory usage, and an in use buffer dump. +- Console name changed from *Console* to -Console- to accomodate Win32 + filename restrictions. +- Corrected the Win32 ftruncate bug. +- Additional version information added to Job reports. +- New -8 option for bsmtp to specify UTF-8 encoding type. +- bsmtp will no longer add < > to target (from, to, cc) if there + is already a < in the target. +- Prefer Mounted Volumes extended to mean a volume that is being + mounted by another job. +- Runscript timing set to same as version 1.38.11 +- New TLS Allowed CN directive(s) permitted. +- New bconsole 'exec' command to run external script/command. +- Turn on FreeBSD/OpenBSD code to set EOT model on tape. +- Drop from root done before database is opened. +- Database user and name can be configured with: + --with-db-name=name --with-db-user=user +- Turn on wait_for_drive in mtx-changer script. +- Rework how bar codes are handled in mtx-changer script. + This appears to have been an unreported bug. +- Updated nagios plugin supplied by Christian Masopust +- Better restricted console ACL checking. +- New Client Connect Wait directive in Storage daemon so that + users can configure how long SD waits for FD connection. +- Bacula will no longer permit pruning of the currently running + job (note, if other jobs are running, they may be pruned). +- Sockets are no longer restored. +- dbcheck works in 300K chunks so will typically run faster. +- Include/Exclude lists can now be efficiently handled for quite + large sizes -- tens of thousands of entries. +- Several memory leaks in migration and database usage were fixed. +- New console keyword restoreclient, which specifies the client to + which the restore will be sent. The client keyword specifies + the backup client. The restoreclient keyword is optional if it is + not specified, the backup client will also be the restore client. +- The disk file size is now checked to ensure that it agrees with the + catalog value before Bacula will append to the disk (same as tape + and DVD). diff --git a/docs/techlogs/2008/technotes-2.4 b/docs/techlogs/2008/technotes-2.4 new file mode 100644 index 00000000..53dc057c --- /dev/null +++ b/docs/techlogs/2008/technotes-2.4 @@ -0,0 +1,1797 @@ + Technical notes on version 2.4 + +General: +14Apr09 +kes Fix bug #1246 Sometimes access denied with VSS enabled. UCS + conversion cache was not properly flushed at the end of a Job. +27Mar09 +kes Backport label failure patch. This fixes bug #1227. +20Mar09 +kes Fix editing of a few time_t variables to make them 32/64 bit + independent. This fixes bug #1247 - 64-bit time_t and varargs + don't get along in some printf-like formatting. More work needs + to be done, but this should be fixed in 2.5.43. +kes Convert seconds.seq separator into seconds_seq so that Bacula + editing of the Job name from the full Job name works. This fixes + bug #1255 'variable %n changed'. +16Feb09 +kes Backport code from the development SVN and should fix bug #1213, + which is a deadlock in the SD when a volume is on the wrong drive. +11Feb09 +ebl Apply 2.4.4-fortify.patch that should fix the _FORTIFY_SOURCE + problem. +30Jan09 +kes Fix a text sizing problem in the tray-monitor reported in + bug #1219, with patch included. +22Jan09 +kes Fix bug #1211 crash during reload with bad dird.conf file. +10Jan09 +kes Fix bat.pro.in so that bat will install. +07Jan09 +kes Fix bug #1212, SD is unable to recycle purged volumes. fstat() + was broken. + +Release Version 2.4.4 +28Dec08 +kes Apply fix suggested by Bruno Friedmann to configure.in to + find python2.5 + +Release Version 2.4.4-b2 +23Dec08 +kes Fix bug #1208. Inappropriate Volume purging. +22Dec08 +kes Modify sql_update.c to edit zeros rather than NULL in unset + fields. This should fix bug #1206, where apparently the user + has modified the Bacula schema. +20Dec08 +kes Backport most recent changes to compat.h and compat.cpp. +13Dec08 +kes Create and apply 2.4.3-migrate2.patch, which fixes two bugs + - Bug #1206 -- sql error when there are no files to migrate. + - Bug #1171 -- Job catalog log is not migrated during migration. + +Release Version 2.4.4-b1 +03Dec08 +kes Apply 2.4.3-sd-deadlock.patch that should fix bug #1192. +02Dec08 +ebl Remove extra db_lock() in get_prune_list_for_volume() +ebl Apply 2.4.3-prune-deadlock.patch that fixes a problem when + using Catalog as message backend. +20Nov08 +ebl Apply 2.4.3-win32-runscript-unicode-path.patch for #1110 + about a problem when executing a program with Unicode path. +ebl Apply 2.4.3-unique-inchanger.patch fix for #1175 about bad slot + number if the volume is not in autochanger. +18Nov08 +kes Probably fix for bug #1188 where Volume is purged while writing + on it. +kes Get message enhancement to avoid job name lookup. +07Nov08 +kes Fix bug with job name duplication if more than 60 jobs created + during a minute. +kes Correct some bugs of cleanup in SD if the FD connection fails. +02Nov08 +kes Fix orphaned jobs (possible deadlock) while pruning. +31Oct08 +ebl Backport of the btraceback script that keeps trace file on working dir +28Oct08 +kes Migrate DB Log records too. This fixes last part of bug #1171. +24Oct08 +kes Modify SQL so that jobs that failed will not be migrated. +kes Correct bug where long retention periods caused immediate + pruning. + +Release Version 2.4.3 +27Oct08 +ebl Apply 2.4.3-update-slots.patch to fix #1175. About update slots + that don't reset InChanger flag when slot is empty. +10Oct08 +ebl Apply 2.4.2-cancel-non-running-jobs.patch to be able to cancel + a non created job faster. +08Oct08 +kes This should correct bug #1159 where Migration does not properly + respect the Migration Low Bytes directive. +02Oct08 +ebl Fix typo in configure.in that breaks --with-db-password option +24Sep08 +kes This code should fix the race condition that leads to a Director + crash at job end time when the job list is updated. This was reported + in bug #1162. +20Sep08 +kes Remove all double quotes from SQLite creating script and + replace by single quotes as suggested by John Huttley. +08Sep08 +kes Fix SQL case problem that may cause the failure of DiskToCatalog + in bug #1149. +kes Copy missing storage name into edit buffer. As far as I can tell + this never caused a bug. +28Aug08 +ebl Remove catalog dependency for bcopy +ebl Modify catalog scripts to have an easier packaging integration, + using default variables. + Make difference between SQLite3 and SQLite in db_get_type() +26Aug08 +kes Attempt to fix bug #1128 InChanger flag cleared during Migration + job when reading from one autochanger and writing to another. +24Aug08 +kes Add more information to SD acquire.c INFO messages. +kes Fix NULL Volume name error when reading and the drive must + be switched. +14Aug08 +kes Fix a Verify InitCatalog problem where in certain cases + a garbage filename may be entered in the verification database. This + fixes bug #1143. +kes Add space after version before date in bat about dialog. +12Aug08 +kes Fix seg fault in Dir during estimate command with no level value + given. This fixes bug #1140. +08Aug08 +kes Add message to migration job when the target job is already migrated. + This closes bug #1129. + +Release Version 2.4.2 +26Jul08 +kes When a migration job actually runs, re-check the Job record + and skip if the job is already migrated. This should + significantly reduce the problems with bug #1129. +24Jul08 +kes Break the do_swapping into do_unload, do_swapping, and + do_load. It is much more logical that way. +kes Implement a set_dcr_from_vol subroutine in acquire.c for + reading volumes. This allows the dcr to be refreshed after being + zapped when the wrong volume is mounted. + This should fix bug #1126 -- During multiple tape restore, Bacula + does not ask for physical tape change, but rereads same tape +23Jul08 +kes Apply patch submitted for bug #1107 with a small modification. + This fixes a bug where bcopy copied too many records. +kes Make some tweaks to bsmtp based on patch submitted in bug #1124. + This fixes bug #1124. +kes Make the default bat restore Pool be Any. This fixes bug #1118. +22Jul08 +kes Minor cleanups. +kes Fix bug #1125 which reports a SD crash at the end of a tape + during restore. It was a debug statement that should not be + in a release. +20Jul08 +ebl fix #1034 by setting big timeout on mysql connections +19Jul08 +kes Do partial integration of the Win32 bat build created by Eric. +kes Fix bat not to block. +15Jul08 +kes Ensure that SD tried to mount a volume not in an autochanger + at least once before asking for operator intervention. +kes Fix a pthreads bug in the Win32 pthreads emulation code. + +Release Version 2.4.1 +07Jul08 +kes Clear in-use bit on vol when unused while swapping. +06Jul08 +kes Remove sleep at end of ./bacula +kes Clear hash packet for hardlinked files correctly. This corrects + a long standing bug where hardlinked files selected individually + would occasionally not be restored. +05Jul08 +kes Apply Eric's patch to ensure that autoprune does not return + a Volume not in the autochanger unless requested to do so. +kes Correct bat restore display of multiple drives. This fixes + bug #1117. +kes Do find_a_volume() each time an unload is done. This + fixes the failure of maxvol2-test. + +Release Beta version 2.4.1-b2 +04Jul08 +kes Use Qmsg() in job.c watchdog callback. +03Jul08 +kes Release main control rwlock if ABORTing. +kes Make watchdog connect timeout queue messages rather than sending + directly to avoid lock conflicts with the real thread. +kes Remove const char that causes problems with Python, which has + older 'incorrect' headers. +kes Add const char in dbd.c to avoid compiler warnings. +02Jul08 +kes Fix mtx-changer to detect both versions of Ubuntu (Debian) + mt. This fixes bug #1116. +kes Fix failure of 2drive-concurrent-test. Always read label; + clear_unload() only after drive is defined in acquire_for_read(). + +Release Beta version 2.4.1-b1 +01Jul08 +kes Back out bad src/lib/base64.c change. +27Jun08 +kes Generally clean up the manual tape loading code. The main + conceptual change is that when a volume is marked to be unloaded, + its volume name is retained, and it is only marked as unloaded + when either the autoloader says it is unloaded or another tape + is read on that drive. +26Jun08 +kes Fix a recycling problem with two autochangers reported in bug + #1106. This may also (unlikely) fix a second recycling bug as + reported in #1103. +kes Fix a SD lock volumes deadlock problem reported in bug #1100. +25Jun08 +kes Fix format problem in bscan output reported in bug #1105. +22Jun08 +kes Copy more data when restarting a job so that run + overrides are kept. This should fix bug #1094. +kes Backport updates to jobq.c where possible. +20Jun08 +kes Fix bug where SD did not ask operator if the device could not + be opened. Reported by Eric. +19Jun08 +kes Add dbuser to DIR conf file (replaces user). +kes Add --with-db-password to ./configure +kes Fix regress to handle db_password. +kes Fix a couple of pedantic compiler warnings. +ebl Fix bug when starting a restore on a storage that doesn't + have the requested MediaType. +18Jun08 +kes More work on word alignments -- eliminate all ints from + the configuration routines. +17Jun08 +kes Fix bug reported by Scott Barninger where the bacula script + refers to scripts in the wrong directory. Needed to meet the + requirements of recent FHS location changes. +kes Fix word alignment problem on non-Intel 64 bit machines + such as Solaris. This should fix bug #1097 -- bus error in SD. +12Jun08 +kes Add missing win32/patches/wxWidgets.patch to 2.4 repository. + +Release Version 2.4.0 +04Jun08 +kes Update version to reflect the magnitude of the SD changes. +03Jun08 +kes Make sure to clear JS_WaitMedia when operator mounts a Volume. + This fixes bug #1095. +31May08 +kes Add create_postgresql_database.sql to Win32 installer. Should + fix problem reported by Juilio Monteiro. +kes Get correct slot when auto unloading a device. This fixes bug + #1086. +30May08 +kes Fix multiple media restore. +kes Make DEVICE Slot private and access it via a method. + Allows better control over when it is set and cleared. +kes Fix possible seg fault if SQL error. +28May08 +kes Add debug code to SD. +kes Fix renaming a Volume, which used the wrong Volume name. +26May08 +kes If operator has rewind tape, print warning, release tape and + try once more. If tape is positioned somewhere, something went + wrong, so mark the tape in error and try once more. Previously + this error was fatal, now it produces an error message. +kes Ensure correct volume name displayed during restore +kes Ensure that Volume is mounted for restore. +25May08 +kes Fix a few more Coverity reported problems. + +Beta Release Version 2.2.10-b4 +24May08 +kes Enhance a couple of SD debug messages. +kes Tweak unload flag setting and ensure it is set during swap. +23May08 +ebl Fix #1091 about bad output in estimate command. +21May08 +kes Modify autochanger locking to attempt to avoid race + conditions. +kes Make sure device not busy before doing label command. +kes Display open() errors except when polling. Previously too + many were suppressed. This should fix bug #1070. +kes Fix Win32 reparse points. Bacula will not recurse into any + reparse point directory, including mount points, unless the + directory is explicitly mentioned at the top level (same as + with Unix). A file that is linked to another file will be + backed up -- much as Unix does for hardlinked files. + This fixes bug #1041. +20May08 +kes Remove double quotes from ChangeLog and ReleaseNotes +kes Remove StorageId test when pruning and recycling (Eric's changes). +kes Remove old form of locking when getting volumes -- causes deadlock. +17May08 +kes Fix buffer overruns detected by Coverity. + +Beta Release Version 2.2.10-b3 +13May08 +kes Tweak joblog display. +12May08 +kes Implement --without-qwt +kes Fix layout of restore tree dialog +kes Add configure bat QWT libraries, so that bat can be built + with or without the QWT libaries. +11May08 +kes Apply batfix bat cleanup patch from Riccardo. +kes Make sure we unload the right slot when swapping. +08May08 +kes Improve SD reserve debug code. +kes Testing an improvement to free up volumes no longer in use. + +Beta Release Version 2.2.10-b2 +07May08 +03May08 +kes Rework SD acquire for read to handle autochanger Volume + swapping. +kes Implement regression that explicitly tests swapping a Volume + from one drive to another. +kes Enhance disk-changer to detect most error conditions. +kes Fix SD code so that it properly swaps a Volume between drives. + This fixes bug #1083. +01May08 +kes Prevent a Volume that is being swapped from being freed from + the volume list. This will most likely fix, at least partially, + bug #1083. +kes Fix strippath so that it does not get a buffer overrun and crash FD. + This fixes bug #1078. +kes Make inability to change owner/group when creating a dir only a + warning rather than an error. +28Apr08 +ebl Fix SQL query in migration code +19Apr08 +kes Force unload of volume when wrong volume mounted in SD. +17Apr08 +kes Fix bat seg fault at termination. +kes Add Bacula generated version to bat about box. + +Beta Release Version 2.2.10-b1 +16Apr08 +kes Permit multiple simultaneous restores -- experiment. +15Apr08 +kes Backport development stream SD reservation system changes. + See below: +16Apr08 +kes Move final volume swapping code to DCR method and + call it from acquire_for_read(). +kes When wrong volume is mounted during read, unload_autochanger. +14Apr08 +kes Stop searching for Volumes in SD askdir if DIR returns the + same volume name twice in a row. +13Apr08 +kes Tweak the swap Volume from one drive to another code so that + it now seems to work. +kes Resolve several problems with recycling that broke the new + code (these problems are in 2.2.9 as well). +kes Remove the volume lock when calling the sysop code. +kes Don't mark a reserved volume with no writers as unused otherwise + jobs fail. +12Apr08 +kes Rework class structures for VOLRES, DCR, and DEVICE to make + the method names a bit more logical, and for more logically + handling the responsibilities. +11Apr08 +kes Remove redundant code in terminating the scheduler that just + causes a seg fault in many cases. +kes Cleanup releasing a volume and make it a DCR method. +kes Improve algorithm for detecting pre-reserved volume and + swapping volumes. +10Apr08 +kes Tweak volume swapping code so it works. +kes Correct name overloading in mount.c +kes Replace released flag in VOLRES with reserved and add access + methods for the VOLRES class. +kes Prevent volume from being released while being swapped. +kes Refactor parts of stored/mount.c +09Apr08 +ebl Add sanity checks for VolWriteTime and VolReadTime +ebl Take care of bad clock changes while computing VolWriteTime + and VolReadTime. This should fix or limit #1066 +kes Correct error string numbers in dird/catreq.c +kes Restructure reserving, acquiring, and mounting volumes. Calls to + autochanger are deferred for mount.c -- simplifes the code. +08Apr08 +kes Do not prune any running job. It just fails the job. +kes Lock the volumes when changing dev->reserved_device and marking + the volume unused otherwise the device can get reserved by + another job before the volume is released, thus blocking it. +=== + +Beta Release Version 2.2.9-b7 +14Apr08 +kes Close bat console windows first to eliminate error message + from the notifier. +kes Remove useless code in Scheduler that causes seg fault on + termination. +kes Correct some SD catalog request error messages. +kes Don't allow pruning of any running job. +kes Turn off code in read_record that causes a seg fault in the SD + when reading past an EOS_LABEL. +kes Turn off unloading the autochanger in reserve.c as it just + causes problems. +kes Lock volumes when unreserving a device. +kes Do not mark volume unused when recycling. +kes When acquiring, don't mark volume unused if it is reserved (busy). + +Beta Release Version 2.2.9-b6 +06Apr08 +kes Eliminate ./configure warning on po directory +kes Fix bug #1063, reuse of freed ptr in list nextvol. +kes Release regex compile buffer in filed/job.c +kes Add proper type of const char in sql_create.c +kes Turn off debug in daemon termination routines +kes Move free_volume_list() before devices are freed in stored.c +kes Fix reference to uninitalized stack variables in bregex.c. + This should correct bug #1067. +04Apr08 +kes Fix possible seg fault in SD when freeing a volume entry. +02Apr08 +kes Apply patch from bug #1069 that corrects spurious error messages + when ACLs enabled on SGI but no ACL exists. +ebl Fix a storage deamon segfault at debug level 500. + +Beta Release Version 2.2.9-b5 -- not released + +Beta Release Version 2.2.9-b4 +01Apr08 +kes Re-enable code to remember last volume mounted on a non-tape + Autochanger. +kes Add patch supplied in bug #1068 that fixes a SD crash when using + a Virtual autochanger. +kes Generate correct JobMedia records during spooling/despooling when + running concurrent jobs. Thanks to Tom Ivar Helbekkmo + for excellent analysis and testing. + +Beta release Version 2.2.9-b3 +27Mar08 +kes Rework certain SD locking based on gdb tracebacks of deadlocks + sent by Eric. This code now uses only the volume_lock() rather + than the reservations lock when at EOM and acquiring a new + volume. +kes Ensure only one exit point in several subroutines. + +Beta release version 2.2.9-b2 +24Mar08 +kes Fix to initial tape drive open to release the volume name + +Beta release Version 2.2.9-b1 +22Mar08 +kes Fix to JobMedia fix. +kes Fix bug pointed out by Peter Much that causes the StorageId to + be updated when reading a tape (during migration, it could have + been incorrectly set to the write StorageId). +21Mar08 +kes Implement autostart scripts for Debian +20Mar08 +kes Fix mtx-changer.in for broken Debian mt program. +19Mar08 +kes Massive commit of all fixes and back ports to create 2.2.9 +18Mar08 +kes Apply doc fix from bug #1062. +kes Resolve crash and improper restore wx-console Win32 restore + GUI. Fixes bug #1065. +kes Update Win32 wxWidgets to latest version. +kes Attempt to do correct handling of Win32 mount points. Should + fix bug #1046. +kes Fix Win32 FD backup/restore memory leak due to improper termination + of BackupRead/Write. This fixes bug# 1038. +kes Add const to AIX prototype for initgroups() +27Feb08 +kes Undo bug #1047 heap overrun fix as it is not correct. +14Feb08 +kes Fix creating first JobMedia record during Migration to include + proper index. This caused slow restores of migrated jobs. +10Feb08 +kes Fix bug #1047, which had a heap overrun when stripping certain paths, + and do not strip paths on symbolic links. +kes Set catalog backup database and user name from values specified on + the ./configure line. +ebl Apply patch to correct bug #1031, about wrong pool source information + in job report. + +Release Version 2.2.8 +25Jan08 +kes Apply patch from Martin to correct bug #1040, bscan sets existing + ClientId to zero. +kes Fixed important spelling error in doc -- bug #1045. +23Jan08 +kes Move initialization of read/write res lock earlier in the code. + This fixes the crash with a null conf file. This fixes bug + #1030. +kes Redefine CURES in lib/parse_conf to be URES and move it all + into lib/parse_conf.c -- this responds to bug #1042, but does + not fix it. The fix is not to compile with FORTIFY_SOURCE. +kes Backport fix de-referencing a NULL pointer in the scanner from + the trunk SVN. I don't think this was reported as a bug. + +Beta release Version 2.2.8 +09Jan08 +kes Re-enable the new job code editing (%f). +08Jan08 +kes Fix bsnprintf for float point numbers. I broke recently when + parameterizing some variables. This fixes bug #1036. +03Jan08 +kes Move Heartbeat documentation from Job to Director resource. + This fixes bug #1033. +02Jan08 +kes Fix existing switch drive SD code to call autochanger to release + any old volume. This must be done to keep the autochanger from + releasing subsequently newly reserved volumes in doing a close(). + This should possibly fix bugs #1032 and #1018. +kes Apply big backport of current SVN SD code that corrects a number + of race conditions. This is a first step in fixing bug #1018. +29Dec07 +ebl Fixes bug #1028 where "Selection Type" option was not usable + with JobDefs. + + +Release Version 2.2.7 +24Dec07 +kes Partial back out (disabled) %f job code editing because it + does not build on Win32. +kes Fix seg fault Frank Sweetser reports in regression testing + on his systems. The problem was that the original author of + bsnprintf.c did not take into account the side effects of + using ++x in the argument to a #define. +14Dec07 +kes Apply patch from Michael Stapelberg + that implements double quoting include names in conf files, + and also allows piping input by having the first character + be a vertical bar (|). +kes Apply patch from Bastian Friedrich + that implement %f in RunScripts to pass the FileSet name. +kes Skip leading | when lex input comes from a pipe as suggested + by Michael Stapelberg . +13Dec07 +kes Apply patch for bsmtp Win32 daylight savings time fix supplied by + Nerijus Baliunas +10Dec07 +kes This patch corrects a problem where the maximum concurrent storage + jobs counter gets out of sync during restore jobs causing jobs to + 'wait on max Storage jobs'. This patch fixes bug #1009. +08Dec07 +kes Add new include to postgresql.c suggested by Marc Cousins so + that it compiles correctly with pgre version 8.3. Also fix + misuse of %x with pointer (should be %p). +03Dec07 +kes This patch fixes bcopy so that it produces correct Volumes. + It fixes bug #1022. +kes This patch eliminates spurious output to the console during a VerifyVolume + job that contains encrypted data. It fixes bug #1024. +02Dec07 +kes This patch prevents the 'status dir' command from trying to use a scratch + volume and possibly moving it from one pool to another. This patch fixes + bug #1019. +30Nov07 +kes Fix --archivedir addition to configure. Replace it with + --with-archivedir in configure.in This fixes the regression + test builds. +kes This patch fixes bug #1012 where the job is canceled because + of Max Run Time exceeded when the job has not yet started. +29Nov07 +ebl Apply Richard Mortimer patch that fixes #1016 when there are more than + one 'part' to write. Instead of each part being stored on disk, + written to DVD, then deleted from disk, all parts are written to disk, + and only the last is written and deleted from disk. +27Nov07 +kes Correct typos in disk-changer.in +25Nov07 +kes This patch fixes the status command to include the formating string for + JS_AttrInserting. It fixes bug #1021. +kes This patch should fix the Mac OS X build problem on the latest + Darwin, where sys/types.h was not included correctly (apparently + due to a change in the Mac headers). The solution was to explicitly + ensure that it is defined for the ./configure. + This patch also has a rebuild of configure that includes the Debian + qt4 patch to check for qmake-qt4. This patch fixes bug #1020. +kes This patch should ensure that queued messages to the console are + displayed as soon as possible. It should fix bug #1007, but has been + reported not to work. +14Nov07 +kes This patch fixes the infinite loop when trying to increase the + maximum number of volumes in a Pool during the add command. + This patch fixes bug #1008. + +Release Version 2.2.6 +09Nov07 +kes Get fix for joblist bug in bat from trunk. +04Nov07 +kes This patch fixes bug #1003 where putting the message output from + a Verify job into the catalog results in a recursive loop. The problem + seems to show up only with postgresql (to be verified). +02Nov07 +kes Fix bug #942 where lots of emails where generated when the heartbeat + interval was low and Bacula wanted a different tape from the one in + the drive. +26Oct07 +ebl Apply 2.2.5-lastwritten.patch to fix the LastWritten field + which was updated during a restore (or a reading migration) bug #982 +24Oct07 +ebl Use qmake-qt4 instead of qmake when available (debian system). +22Oct07 +kes Add a security warning to src/cats/make_catalog_backup.in indicating + that passing the password via the command line (arg 3) is insecure. + This responds to bug #990 (it doesn't fix it). +kes Apply 2.2.5-postgresql-errors.patch +kes Remove unneeded File table index on JobId, which is already + present as the first index of another multi-index. +19Oct07 +kes Set default debug_level to zero. This corrects bugs #991 and #993. +kes Fix a crash in bat when it cannot connect to the Director for example + if the Director is not running. +16Oct07 +kes Activate Close button on tray-monitor window. This fixes + bug #986. +12Oct07 +kes Fix spurious warning message printed when creating a volume with + a LabelFormat. This fixes bug #976. + +Release Version 2.2.5 +09Oct07 +kes Add JobId in place of Job name in all the Jmsg() output. +kes Correct the APP_DESC for the Win32 storage service (remove an e). +06Oct07 +kes Add new SD despooling attributes and Dir inserting attributes + job status codes. This fixes bug #961. +kes Fix Win32 drive display in bat version browser. Fixes bug #962. +05Oct07 +kes Fix doc issue. This fixes bug #963. +kes Fix listing performance problems in bat. Pointed out by + Chris Howells. +ebl Fix replace on restore. This fixes bug #969 +kes Fix bat code that tests for Win32. This should fix bug #968 +kes Query 5 list wrong Vol after migration. This fixes bug #960 +04Oct07 +kes Correct lib/Makefile.in to include enh_fnmatch.o that was removed + in back porting from 2.3.x +03Oct07 +kes Backport almost 4000 lines of 2.3 code that fixes a number of bugs. + The details are included in the notes in this file. +28Sep07 +kes Backport 2.3 code that fixes: it fixes incorrect or incomplete error + messages; it fixes a problem opening the SQLite3 database when multiple + simultaneous jobs were running; it fixes a bug with certain versions of + MySQL where batch inserts failed because of table name character case + (upper/lower) differences. +kes Fix race condition that drops final block written to volume. + This happens in rare cases with multiple simultaneous jobs + when the Volume fills. This fixes bug #964. May be related + to bug #935 and possibly #903. +27Sep07 +kes Fix FD->SD authorization failure, which was due to spurious + wakeups from a pthread_cond_timedwait(). Simply check the + predicate before continuing. This fixes bug #953 +dvl Add new configuration item --archivedir +dvl Adjust regression tests to use tmp not /tmp. This will allow + multiple concurrent runs of the regression tests. +28Sep07 +kes Eliminate more strerror() and replace with bstrerror(). +kes Remove BSD getopt and replace with unrestricted IBM version. +kes Fix Win32 build for changed calling sequences. +27Sep07 +kes Fix FD->SD authorization failure, which was due to spurious + wakeups from a pthread_cond_timedwait(). Simply check the + predicate before continuing. This fixes bug #953. +kes Add const char where needed (more to do). +26Sep07 +kes Setup SQLite busy handler before doing queries. Fixes bug #967. +kes Don't overwrite error message in check_tables_version. + Fixes bug #966. +kes Unlock batch insert tables with same calls used elsewhere. +kes Allow starting 59 jobs a second. +kes Make SD session key more random. +kes Add retry for SQLite opening db if it fails. Probably helps + for bug #967. +kes Suppress extra error messages during batch insert failure. + Fixes bug #966. +kes Put some FD auth code on dbglvl rather than fixed. +kes Return insert attributes error message in db msg buffer to avoid + false error messages. Helps fix bug #966. +kes Separate batch init error messages. Probably helps fix bug #966. +kes If Dir gets an error during inserting attributes, cancel SD. + This reduces unnecessary error messages. +24Sep07 +ebl Cleanup batch insert code. Probably fixes bug #965. +23Sep07 +kes Turn off some code when batch insert not enabled. +kes Edit FD name in connect error messages. +22Sep07 +kes Add code to handle tray monitor separated from Win32 FD. +kes Fix display of Win32 tray monitor after reboot. Fixes bug #952. +20Sep07 +kes Fix ANSI tape labeling. This fixes bug #954. +kes Increase the max block size to 4MB fixes bug #957. +kes Apply 2.2.4-poll-mount fix, that resolves bug #908 where a tape + is not properly mounted (recognized) during a poll. +kes Apply 2.2.4-verify patch that resolves bug #958. A Verify catalog + Job that has differences reports Verify OK. +ebl Fixes #955 bug seg fault in Dir introduced with regexwhere relocation. + +Release Version 2.2.4 +14Sep07 +kes Increase size of name string when FD making connection to SD. + May fix bug #953. +13Sep07 +kes Add waits to multiple exit detection code to try to force pid + file to always be deleted. +kes Restore good dev.tar.gz to rescue set appropriate binary property. + This fixes bug #950. +kes Fix seg fault in error exit of acquire_for_read after unsuccessfully + trying to switch drives by checking for blocking before unblocking. + Fixes bug #906. +kes Cancel storage daemon in all cases where FD reports error. This + should fix virtually all cases of bug #920. +12Sep07 +kes Fix error message that was clobbered when Dir tells SD it does not + have write permission on Volume. This should fix a minor point + in bug #942, but not the main problem. +kes Add code to cancel job in SD if FD connection fails. This should + fix bug #920. +kes Add code in FD exit to prevent loops and a crash on FreeBSD. +kes Fix migration code to get correct Volume name with multiple volumes + by skipping |. Fixes bug #936. +kes Implement patch supplied by Landon to fix bug #944 where using + TLS with bconsole uses 99+% of the CPU. +kes Note, you need GTK >= 2.10 to be able to link the Tray Monitor + program. +kes Move patches into patches directory. +11Sep07 +ebl Fix bug #946 about 'bacula-dir -t' which doesn't works + as expected. +09Sep07 +ebl Using 'm' in bconsole will show messages like before, + and not memory usage. + +Release Version 2.2.3 +kes Note, you need GTK >= 2.10 to be able to link the Tray Monitor + program. +09Sep07 +kes Fix bug #935, and probably also bug #903 where files were not + restored. MediaId was not properly set in JobMedia record after + a Volume change. +07Sep07 +kes Add ./configure search in qwt-qt4 for qwt package +kes Apply Martin Simmons patch that should turn off the new API usage + when batch insert is turned off allowing building on older + PostgreSQLs. + +Release Version 2.2.2 +04Sep07 +ebl Detect if new PosgreSQL batch insert API is present. +kes Correct incorrect mempool call causing Director crash. +sb Update spec files for 2.2.1 release + +Release Version 2.2.1 +30Aug07 +kes Update POTFILES.in +kes Cleanup a few underquoted AC_DEFUNs in configure +kes Apply patch from Martin Simmons that adds a test for va_copy to + ./configure +29Aug07 +kes Fix bug #921 by increasing the number of tries to create a new volume + from 11 to 100. +kes Rework bmsg in ua_output to use va_copy() so that bvsnprintf() + can be called multiple times. Implement a version for machines + without va_copy() that gets a big buffer. +25Aug07 +kes Integrate more portable zone offset code into bsmtp.c + Submitted by Attila Fülöp. +24Aug07 +kes Fix bad SD->FD return status reported by + (James Harper) +ebl Fix a bug in read_close_session which return random status + thanks to James Harper +23Aug07 +kes Fix (hopefully) bug #930 by doing a db_escape_string() on file + and directory names during restore of single file/directories. +kes Add sanity checks to .sql command when string is empty. Hopefully + that will resolve Dirks Director crash. +22Aug07 +kes Apply patch submitted by Martin Simmons that corrects a seg fault + in the bsmtp chat subroutine when debug is >= 10. +21Aug07 +kes Fix Director crash when running bat SQL queries. +kes Add David's notes on Item 8: Copy pools. +18Aug07 +kes Rework projects file to be current and ready for a vote. +kes Enhance lex scanner error message. +17Aug07 +kes Tweak LICENSE file to mention BSD code. +kes Fix bat.pro.in so that it includes the OpenSSL libraries only + if specified on the ./configure. +kes Add first (not yet tested) cut of bcomm to the qt-console directory. + This class is intended to allow us to open a second bsock to the + Director while in the restore subdialog. +16Aug07 +kes Fix configure to create bat Makefile before creating dependencies. +kes Eliminate the egg files from the tray-monitor. Use gtk calls. +kes Add a tooltip to the tray monitor. +dvl Set the Director's PID file before dropping privs. This fixes + bug #923. +15Aug07 +kes Update AUTHORs file +kes Increase the default max concurrent jobs to 20 in FD and SD to + correspond with the default .conf files. +kes Rewrite the Win32 service routines. This eliminates the 3 copies + some different, of the same file created by RN when porting the + Win32 SD and Dir. +kes Rearrange some of the Win32 directories and the placement of the files + in them. +kes Set DEVELOPER flag in version.h + +======================================================================== +Release Version 2.2.0 +09Aug07 +kes Apply a second doc patch from Marc. +kes Apply a doc patch from Marc Schiffbauer that + improves the tips section that discusses how to setup multiple + simultaneous jobs. +08Aug07 +kes Update bat README file. +kes Apply patch from Allan Black that + corrects a typo in the Recycle status check in db_find_next_volume(). + This will probably fix a number of annoying problems with multiple + Recycled volumes. +kes Modify most of dird/msgchan.c to use bsock class calls rather than + bnet calls -- no functionality change. +07Aug07 +kes Modify the Verify output to specify if files are missing on + the Volume(s) or disk. Fixes confusion in bug #916. +kes When more than one Volume is read in a migration job, the last + Volume bytes reported are from the last read volume rather than + the last written volume. Fixed. This fixes bug #910. +kes Fix display of Recycle flag after update volume=foo recycle=yes. + It previously printed New Recyle flag is: no. This fixes bug + #917. +06Aug07 +kes Correct seg fault when switching tape drives during restore. +kes Commit uid_gid_name.c (replacement for idcache.c), but will not + be used until after 2.2.0 release. +04Aug07 +kes Remove fnmatch() in SD that permitted wild card specifications. + This fixes bug #914. +31Jul07 +kes Fix %g in filename returned by SQL for browse tree reported by + Dirk. +kes Fix configure so that it puts config.out in the cwd rather than + in src/qt-console +kes Attempt to fix the locking problem reported by Eric in bug #906. +kes Make berrno class to leave errno unchanged after constructor call. +kes Make bnet_server use the heap rather than the stack to allocate + its socket fd pointers to avoid a crash at termination. Problem + reported by Ryan Novosielski and bugs pointed out by Martin Simmons. +30Jul07 +kes Create new depkgs and depkgs-qt separating the qwt out of depkgs + and putting it in depkgs-qt along with Qt4.3. +29Jul07 +kes Rework code in acquire.c that switches drives for reading when + the Media Type does not match. This should fix bug #906 +28Jul07 +ebl Fix a director segfault during job setup #907 +kes Correct seg fault in postgresql when first operation returns no + rows. Fixes Dirks File browser problem seg fault with bat. +25Jul07 +kes Apply patch from Felix Schwarz that allows + building wxconsole on Fedora 7 with wxWidgets 2.8 (it works with + 2.6 as well). +24Jul07 +kes Implement PopUp YES/NO dialog for bat. +23Jul07 +ebl Fix a compilation bug when using #define BACL_WANT_NUMERIC_IDS +22Jul07 +kes Correct RunScript to terminate job in FD on failure. +kes Change abort_on_error and AbortJobOnError to fail_on_error + and FailJobOnError in RunScripts. +kes Minor tweaks of code formating in RunScripts, principally to + avoid depassing 80 columns. +21Jul07 +kes Eliminate one #ifdef Win32 in bsmtp +kes Implement grow tool to grow a file for testing very large databases. +kes Add big-vol-test to test Bacula seeking with > 5GB. +Release 2.1.28 beta +19Jul07 +kes Modify find_next_volume() to return all values in Media record. +kes Ensure that we keep Recycle Pool when moving Scratch volumes. + +Release 2.1.28 beta +18Jul07 +kes Update Release notes +17Jul07 +ebl fix a bug in get_scratch_volume() report by Andreas Helmcke + Warning, in previous beta version, all media get from scratch keep their + old retention. +16Jul07 +kes Tweaked Win32 installer to remove temp conf files at uninstall time. + This should fix bug #842. Made a note to look at removing the temp + files at the end of the install. +kes Add ability to mount and unmount a file device providing it is + marked as being removable and has the appropriate mount and unmount + commands defined in the Device resource. This fixes bug #830. +kes When applying a storage override, release all previous storage + definitions rather than just prepending the new storage. + This should prevent a good deal of confusion. +14Jul07 +kes Implement ./configure search for qwt libraries. +13Jul07 +kes Disable posting the WM_CLOSE message in KillRunningCopy of the + Win32 FD. This should fix bug #893. +kes Remove an unnecessary beep in Win32 init code. +kes Update copyright dates in Win32 executable about boxes. +kes Replace the FSF copyrighted getopt.c and getopt.h in the Win32 + code with a BSD getopt.c and getopt.h. +kes Remove sched.h from the Win32 compat directory -- not used. +kes Remove the Exit menu item from the Win32 tray monitor. If you really + need to shut it down, do it through the services panel or the command + line. +kes Remove some inappropriate Bacula FSFE copyrights. +ebl Tweak status client=xxx to be more easy to parse (more like in 2.0.x) +kes Fix regress config non-portable test as pointed out by + Florian Heigl +kes Fix PSCMD for HP-UX in configure.in to have proper syntax. + as pointed out by Florian Heigl +12Jul07 +kes Fix missing rctx. prefixes on the Darwin code in src/filed/restore.c + Reported by Frank Sweetser. + +Release 2.1.26 beta +12Jul07 +kes Fix client-only build. +kes Integrate client-only fixes for bsys (initgroups) and conio from + Sergey Svishchev for the AIX platform. +kes Make arguments to get_scratch_volume() in same order as other + such calls. +kes Rework the prune_volumes() subroutine so that after purging and + no volume found in desired pool, it will check for a scratch + volume. This prevents recycling the whole scratch pool. +kes Add code to status storage to print boffset_t (largefile support). +11Jul07 +kes Move qwt (Graphics libarary for Qt4) to depkgs. +kes You now need a --with-qwt= to be able to build bat. +kes Update src/win32/cats/bacula_cats.def to include the new + db_get_query_dbids() call on Win32. +07Jul07 +kes Correct a problem when selecting a scratch volume and moving + it to another pool that lost some columns. +kes Tweak some code in ua_update.c to use POOL_MEM instead of POOLMEM. +kes Enhance Autochanger error messages to include Volume and device name. +kes Rework prune_volumes() code to take account of InChanger flag, + and to handle recycling volumes going to the Scratch pool and + current pool because the RecyclePool directive. +kes Implement a better and more efficient db_get_query_dbids() to + handle creating and passing back a list of DBIds. + +Release 2.1.24 beta +03Jul07 +kes Start work on new more efficient DBId subroutine. First use + will be for recycling volume to Scratch inchanger. +kes Increase number of JobIds in pruning from 1000 to 10000. + This to be replaced by above routine. +kes Begin implementation of building Qt4 on Win32. +kes Correct typo in fix I added for bad TLS shutdown. +kes Pull 2.0.3 patches into patches directory. +kes Update Release notes. Include qt-console in line count. +kes Update Projects file. +30Jun07 +kes Integrate patch from Sergey Svishchev that fixes + bug in migration code where a job that spanned two volumes + was migrated twice. +29Jun07 +kes Implement new BST_DESPOOLING blocked state. Change from locking + during despooling in SD to blocking. This means that other threads + can work with the device structure, in particular the reservations + system while despooling. +28Jun07 +kes Fix return in reservation message queue that missed clearing + the jcr lock (implemented 26Jun07 below). +kes Rename a number of dev methods to make locking function names + a bit clearer. +kes Document locking in lock.c. Move lock structures to new file + lock.h. +26Jun07 +kes Move reservations message lock to lock jcr only this + fixes bug #861. +kes Move main SD locking code into lock.c (new file). +kes Update Win32 build to include lock.c + +Release 2.1.22 beta +26Jun07 +kes Dirk committed the qwt library code for drawing graphs in bat. +kes Tweak install of qwt so that it is integrated with ./configure. +25Jun07 +kes Fix HAVE_BATCH_INSERT to be HAVE_BATCH_FILE_INSERT, pointed + out by Eric (my typo). +ebl Fix configure.in to get batch mode enable +kes Return correct string from authenticate.cpp in bat when connecting + to Dir. +kes Apply patch suggested by Frank Sweetser to fix bug #888 -- + spurious line drops when using TLS. +kes Do not file reparse points when restoring a file that already + exists -- Win32. +24Jun07 +kes Implement Windows reparse points -- similar to directories, but + we do not descend into it. This is a first cut. They seem to + be backed up, but restore is not yet tested. +kes Remove restore_blocking in tls code when shutting a socket to leave + it in blocking mode. Hopefully this will fix the encryption bug + reported by Frank Sweetser. +kes When opening a file for backup, tell the OS that we are going to + read it sequentially -- optimization. +kes Change variable names in authenticate_director() to not conflict + with member names in bat. Caused great confusion with compiler, + but no warnings. +23Jun07 +kes Queue openssl error messages in case of comm problem. +kes Do shutdown() call if socket terminated. +kes Remove some duplicated code in tls.c +kes Move more of the bsock member variables into private and access + them with methods. +kes Add Frank Sweetser's tls-test to the regression suite. +22Jun07 +kes Add Swedish sv.po file +21Jun07 +kes Don't print clock skew message in FD if less than 3 seconds diff. +kes Add a bit of VSS info to status client. +kes Implement a first cut of Vista VSS, using Win2003 code. + +Release: 2.1.20 beta +20Jun07 +kes Fixed bug #886 (multidrive autochanger: SD doesn't use drive with + loaded tape but uses first drive). +kes Fixed bug #807 Restore encrypted backup failed on Windows 2003 + This was indeed a Win32 issue. +19Jun07 +kes Simplify search of autochanger for in-use Volume. +kes Fix exit condition of check for in-use volume. kes Remove + inappropriate my_postgresql_free_result() in db_close() + routine. +kes Fix bad return in FD when encryption signature not found. + Probably caused a crash. +kes Inhibit missing encryption signature error messages for + file types where no signature computed. +kes Correct inverted check on autochanger in reservation system. +kes Tweak debug code in autochanger reservation. +18Jun07 +kes Add some additional locking in the cats directory in subroutines + that modify packet variables called from batch insert. +kes Rework how dcrs are allocated. new_dcr() can now be called + with an existing pointer, and it will simply clean it up. + This allows the reservation system to test various different + devices, and will permit easy device changes. +kes A bunch of changes all over to handle new new_dcr() calling + sequence. +kes Work more on the Volume management in the SD. Remember Volumes + for tape drives and for autochangers (even virtual disk changers). +kes When looking at the Volume list to reserve a drive, handle + autochanger names correctly by interating through the changer + devices. Also call the Director to see if a Volume is suitable + for the current job. +kes Fix some bugs in bscan. Make sure all media records are written. + Make sure that valid JobMedia records are written for disk files. + Previously they were completely wrong. +kes Move source tar files for depkgs-mingw32 to www.bacula.org so + that the URLs don't change and so that the developers will all + work off the same copy. Rebuild from scrach. +kes Upgrade Win32 SQLite3 from 3.3.8 to 3.3.17. + +Release: 2.1.18 beta +16Jun07 +kes Fix seg fault in FD from incorrect digest size. +kes Fix argument to non-OpenSSL crypto.c subroutine. + +Release: 2.1.16 beta +16Jun07 +kes Remove a few malloc()s from the encryption code. +kes Use the class calls to bsock in filed/backup.c and restore.c in + place of the old bnet_xxx code. +kes Implement code that does an on the fly calculation of the + signing digest during restore of encrypted files. It makes + a best guess at the algorithm, and if it is not correct, will + then revert to the old code which reads the file after it is + restored. +kes Implement at least one missing crypto stream in stream_to_ascii() +kes Apply patch from William that fixes bug + #877 where a reload with bad syntax causes Dir to exit. + +Cut: 2.1.14 beta (not released) +14Jun07 +kes Do not free a volume on a tape drive until another volume is + mounted and read, or the autochanger unloads the volume. + This should help the SD re-use volumes that are already mounted, + and should fix bug #886. +kes Apply patch from user brettedgar that allows gnome2-console include + the OpenSSL libraries, and hence work with SSL. Fixes bug #885. +kes Apply patch from Lucien Weller that fixes day of week calculation + because of DST flag problem. Fixes bug #887. +10Jun07 +kes Move find_next_appendable_volume() to after acquiring a valid device + in reserve.c. This fixes bug #864 -- confirmed by reporter. +09Jun07 +kes Unable to reproduce bug 872. However added additional testing for + integer. +kes Bug #874 resolved by documenting SQLite limitations. +kes Bug #882 resolved by documenting mtx-changer script for new drive code. +kes Bug #881 resolved by removing typo in mtx-changer script. +kes Made Frank Sweetser's wiki the official Bacula wiki with his + approval. Added a link to the wiki on the web page, and implemented + a backup from http://paramount.ind.wpi.edu +08Jun07 +kes Fix update allfrompool to pass pool name. +07Jun07 +kes Convert to pure GPL v2 license. +kes Fix sscanf problems reported by Peter Buschman that caused + a bus error on Solaris. +kes Rework (simplify) the select prompt in bat. +kes Move get_jobid_from_tid() into lib and create a + get_jcr_from_tid(). +kes Use get_jcr_from_tid() to conver all tls Emsg() to Jmsg(). This + should definitely fix the problem of lost error messages in the + encryption code. +kes Remove over zellous addition of FSFE copyright in a few eggxxx files. +kes Eliminate tcpd.h from the project. Enclose the #include from the + library with extern C ... +kes Add print of signal name when a signal is trapped. + +Release: 2.1.12 beta +04Jun07 +kes Fix a seg fault in the PostgreSQL driver dereferencing a NULL pointer. +03Jun07 +kes Implement SQLITE3_INIT_QUERY in version.h that can do an initial + query for SQLite3. Use it to set PRAGMA synchronous = OFF. This + makes SQLit3 run 30 times faster, though a bit less safe. +kes Implement --with-batch-insert in configure and detection of thread + safe libraries. It is on by default, but turned off if no thread + safe library (e.g. SQLite 2) is available. +02Jun07 +kes Fix Bacula PostgreSQL buffer overruns. +kes Do better checking for NULL results returned from PostgreSQL; + implement retry for failed queries; clear results buffer after + failed query. Hopefully this will correct the PostgreSQL failures. +01Jun07 +kes Implement algorithm to handle only one appendable volume with + Prefer Mounted Volumes = no. +kes Fix a Bacula PostgreSQL bug dereferencing a NULL pointer + returned from a query. +kes Make volume lock recursive. +kes Implement an additional volume reservation algorithm that + starts by considering all reserved volumes then uses the + old brute force algorithm of searching the resources to + find a suitable device. +kes Add new reservations debug code and refine the old code. +kes Update the win32/dll/bacula.defs file. +29May07 +kes Tweak reservations algorithm to permit a few more cases, i.e. + volume reserved, but on different drive, ... +kes Enhance SD status to include Pool and Media Type for drive in a + more readable format (a bit longer). +kes Fix PostgreSQL double free. +28May07 +kes Minor refactoring of restore decryption code. +kes Add code to smartall.c to detect double free of a buffer. +27May07 +kes Add < > around %r in from field on mail command of bacula-dir.conf.in + so that bsmtp will create a correct email address (mailbox only). +kes Modify 'memory' command so that the buffers are listed as 'In use' + to avoid confusion with Orphaned buffers. +kes I reworked the OpenSSL include/lib flags to be handled in + the standard Bacula way, which should fix bug #863 concerning + non-standard OpenSSL libraries. +26May07 +kes Implement Help Browser window for bat. +kes Fix reload bug that reset StorageId to zero. +25May07 +kes Fix TLS #ifdefing when TLS turned off. +kes Ensure that when labelling a tape with Slot=0 that InChanger + is not set. +kes Use DISTINCT to make MySQL and PostgreSQL uar_list_temp query + the same. +kes Add StartTime to final uar_sel_jobid_temp query so that we can + add DISTINCT (required by PostgreSQL). +kes Implement BSOCK authenticate_director() method. Eventually will + authenicate all daemons. +kes Move several more functions into the BSOCK class. +24May07 +kes Add code to tell the OS that we no longer need a cached + file that we were reading. In findlib/bfile.c. Also, + only cache files that we are reading. Thanks to + Tobias Oetiker for the idea. +kes Tweak to bsmtp to eliminate compiler warnings on Win32. +kes Implement script to automatically generate cats and dll .def + files for Win32 dll. +kes Update README.mingw32 to include new .def file generation. +kes Correct typo in UTF-8 error message as reported by: + jhernandez +kes Add additional sm_check() code on debug level 1. +kes Set default debug level to 1. +kes Trap SIGABRT in attempt to get traceback. +23May07 +kes Reduce bat connect timeout from 30 to 15 seconds. +kes More restructuring and implementing BSOCK class in place of + old bnet.c code. +kes Remove a few unnecessary malloc() tests in crypto code. +kes Turn off crypto calls for > 128 bits in crypto.c if HAVE_SHA2 + not defined. Bug reported by Allan Black +kes Remove duplicate HAVE_CRYPTO definition in config.h.in +22May07 +kes Fix Verify InitCatalog mysql_escape_string() trashing memory. + Make buffer bigger. +kes Fix Verify InitCatalog. The attributes were not pointing to the + correct saved location. +kes Implement message callback so that GUI is sure to get all + daemon messages. Currently displayed in a dialog in bat. +kes Ignore SIGUSR2 (Bacula timer) in bat. +kes Apply regress patch from bug #859 to allow regress to work + with Solaris compiler. +21May07 +kes Begin adding TLS support to bat. +kes Apply UTF-8/16 patch from Yves Orton to + clean up lex.c and make it more readable. +20May07 +kes Move more bnet functions into the BSOCK class. +kes Fix tray-monitor by not requiring a timer interval in bnet_connect() +kes Complete change of berrno strerror() method to bstrerror() + +Release: 2.1.10 beta +18May07 +kes Cleanup incorrect email addresses in bsmtp. +kes Make bat display initial messages rather than discard them. +16May07 +kes First cut of adding .mod to the run command. +kes Implement auto display of messages in bat. +kes Enhanced preferences to allow all Bacula output to be + displayed in bat. +15May07 +kes Try to make bsmtp date routines more generic. +kes Fixed bug #856 autochanger documentation. +kes Rework bsmtp date editing for Win32. This fixes bug #854. +kes Add new cats entry point so Win32 builds. +14May07 +kes Attempt to fix bsmtp date editing on OSes without %z editing. + Fixes bug #854. +kes Do better checking for the MySQL 64 bit libraries looking for both + .a and .so libraries. +kes Add a kludge for Ubuntu's non-standard locations for MySQL -- allow + /usr/include/mysql/mysql.h AND /usr/lib/... rather than /usr/lib/mysql/... +kes Require the thread safe version of MySQL during configure. Thanks + to Andre Noll for pointing this out. +kes Ensure that calls to find_jobids_from_mediaid_list() check count before + continuing in migration code. +kes Apply implementation of tray-monitor font derived from gnome-console + submitted by Andreas Piesk +13May07 +kes Eliminate important memory loss in SQLite +kes Fixed the batch insert MySQL thread specific data that was not + being freed. See cats/mysql.c:db_thread_cleanup(). +kes Fix restore before command. +kes Convert old hdr.name to name() in a few places. +kes Implement update jobid command. +kes Return all time_t dates in db_get_job_record() +kes Stop watchdog in SD earlier. +kes Put Pool just after Storage in please mount message. +kes Fix pointer usage bugs in Verify InitCatalog pointed out by + Eric. +12May07 +kes Update the po files. +kes Fix Verify InitCatalog by making it cache attributes. +11May07 +kes Change name bacula-bat to bat for man 1 page to correspond to + Makefile. +kes Check for client and store NULL pointers in status command. This + fixes bug #845. +kes Fix non-ssl build so that it works (add JCR *jcr to crypto structures). +kes Fix sign extended editing of %p. +kes Clean out a little old #ifdefing in cats/mysql.c +10May07 +kes If time diff between DIR and FD is more than 600 seconds convert + INFO message to WARNING. +kes Implement heap size display in status for all daemons. +kes Attempt to fix MySQL db open memory loss (not successfull). +kes Don't set SIGKILL and SIGSTOP neither can be trapped. +kes Eliminate memory loss in MySQL (possibly other SQLs) during + Query. This looks like a MySQL but but by doing extra releases, + the memory goes away. This should fix bug #847. +09May07 +kes When backup fails, cancel SD before waiting for sd termination. +kes If SD is waiting for FD to connect during cancel, wake up the + thread. +kes Fix fsf code so that errno is correctly reported. +kes Apply migration patch (with changes) from Sergey Svishchev +08May07 +kes Make lack of Pool directive in Job an ERROR_TERM rather than FATAL + so that Bacula doesn't later stumble into a seg fault. +kes Use the term Restore Client in the restore Job report. +kes Merge patch from Sergey Svishchev that preserves + the original job's FileSetId. +kes Merge patch from Sergey Svishchev that implements + spooling in migration jobs. Not yet tested. +kes Merge patch from Jorj Bauer 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 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 new 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 + 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 -- scheduler problem. +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 diff --git a/docs/techlogs/RN-2.2.0 b/docs/techlogs/RN-2.2.0 deleted file mode 100644 index 45d3fcf4..00000000 --- a/docs/techlogs/RN-2.2.0 +++ /dev/null @@ -1,172 +0,0 @@ - - Release Notes for Bacula 2.2.0 - - Bacula code: Total files = 520 Total lines = 195,550 (*.h *.c *.in) - 82 new files, 41,221 new lines of code, 208,380 lines of change from 2.0.3 - -This Director and Storage daemon must be upgraded at the same time, -but they should be compatible with all 2.0.x File daemons, unless you -use some of the new features that affect the FD. In other words, you should -not have to upgrade all your File daemons when you upgrade. There is -no database upgrade needed from version 2.0.x to 2.2.0. - -Areas requiring caution or testing: -- You must have the thread safe version of MySQL client libraries loaded - to build with MySQL enabled. -- Volumes are pruned only when absolutely necessary -- this may cause - your database to grow compared to prior Bacula versions. -- Solaris door and even port files are no longer restored (equivalent - to what we do with sockets). -- SQLite is no longer supported for Solaris -- it fails too often with - bus errors. SQLite3 should work on Solaris. -- The default setting for SQLite3 is now 'PRAGMA synchronous=OFF'. - This makes it run 30 times faster, but increases the possiblity - of a corrupted database if your server shuts down unexpectedly. - The default behavior can be changed in src/version.h -- Restore on Win32, and in particular on Vista is untested. Please - test before relying on it. It should backup and restore reparse - points. -- Win32 servers are untested, and very likely not to work. - -The major new features are: -- Much faster insertion of attributes (somewhere around 10 times), - many thanks to Eric Bollengier and Marc Cousin. -- First release of bat (Bacula Administration Tool). Note to build - bat you must explicitly enable it on the ./configure line, you - must have the Qt4 version 4.2 or later libraries loaded, the qwt - (Qt Graphics) package loaded, and qmake and the other Qt4 tools - must be available. Most of the implementation was done by Dirk Bartley. -- Red/Black restore in memory tree (500 times faster loading). -- The Regex Where code to allow easier relocation of restored files - thanks to Eric. -- Socket level heartbeat for all connections (untested). -- posix_fadvise() use in the FD to improve performance reduces - swapping due to opening/reading lots of files. Win32 equivalent - implemented. -- Much improved Volume reservation code that should eliminate most - conflicts experienced in multiple drive autochangers. -- Simpler locking in the SD in the reservation system. -- Detection of file size/date change during backup if enabled. -- New Recycle Pool feature -- thanks to Eric. -- Efficient implementation of very large include/exclude lists. -- Volumes are no longer pruned during 'status dir' -- Pruning is now more efficient, and if a Volume is purged, - during pruning, it is immediately discovered. -- License is now GPL v2 without modifications, fix a few copyright - mistakes made when adding FSFE copyright notice. - -New ./configure options: -- --enable-bwx-console -- --enable-bat -- --with-qwt= -- --with-db-name= -- --with-db-user= -- --enable-batch-insert - -New bconsole commands: -- exec -- memory -- update recyclepool -- .sql -- .api -- .pwd (in restore tree) -- restoreclient (keyword) -- backupclient (keyword) -- regexwhere (keyword) -- update jobid (new command) -- recyclepool (keyword) - -New directives: -- Heartbeat Interval (bconsole.conf) -- Heartbeat Interval (bacula-dir.conf in Director, Client, Storage) -- TLS Allowed CN (bacula-dir.conf in Client) -- Regex Where (bacula-dir.conf in Job) -- Strip Prefix (bacula-dir.conf in Job) -- Add Prefix (bacula-dir.conf in Job) -- Add Suffex (bacula-dir.conf in Job) -- Recycle Pool (bacula-dir.conf in Pool) -- FailJobOnError (bacula-dir.conf in RunScript) -- CheckFileChanges (bacula-dir.conf in FileSet) -- StripPath (bacula-dir.conf in FileSet) - -Other features or bug fixes: -- Fixed bugs: 916, 910, 917, 914, 906, 907, - 842, 830, 893, 861, 888, 886, 807, 877, 872 - 885, 887, 864, 874, 882, 881, 863, 859, - 856, 854, 845, 847, 846, 809, 772, - 822, 825, 824, 808, 802, 797, 798, 795, 789, 791, - 788, 780, 763, 782, 612, 767, 775, 621, 772, 764, - 766, 621, 761, 755, 750, 741, 747, 742, 744, and 743. -- Configure bat with --enable-bat. Define qwt libraries with - --with-qwt=. See Installation chapter of manual for details. -- Create a depkgs-qt package that has both Qt4 and qwt, which are - needed to build bat. Most modern Linux systems will have both - these packages in the distro. -- Storage overrides delete all previous storage definitions instead - of prepending. -- One should be able to mount and unmount removable devices if the - Device resource has Removeable Media set and the mount and unmount - directives are defined. -- ./configure will do a better job of searching for qwt libraries. -- The Win32 version can no longer be shutdown from the tray monitor. - Use the command line or the Services panne. -- Keep prune_volumes() from pruning the whole Scratch pool. -- More debug output in status storage. -- Correct moving a Scratch volume from pool to pool (some - critical columns were lost). -- Different locking in reservations and despooling systems, - which means more micro-locking and less macro-locking, which - should give a lot more concurrency at the expense of slightly - (<0.1%) more overhead due to more locking/unlocking, but - concurrent jobs should run much faster. -- Additional drive reservation algorithm that should solve a lot of - the problems experienced with multiple drive autochangers. -- Storage daemon status command enhanced to more clearly show Volume, - pool and media type when a job is waiting. -- Made bsmtp work with more strict SMTP servers. -- Detect doubly freed buffers in smartall.c -- wx-console renamed to bwx-console (Fedora request) -- gnome-console renamed to bgnome-console (Fedora request) -- Migration preserves original job's FileSetId -- Spooling implemented for migration jobs. -- Config files can be read through a pipe, by specifying a leading | - in front of the configuration path/filename. -- New memory command (bconsole) that will print the current Director's - memory usage, and an in use buffer dump. -- Console name changed from *Console* to -Console- to accomodate Win32 - filename restrictions. -- Corrected the Win32 ftruncate bug. -- Additional version information added to Job reports. -- New -8 option for bsmtp to specify UTF-8 encoding type. -- bsmtp will no longer add < > to target (from, to, cc) if there - is already a < in the target. -- Prefer Mounted Volumes extended to mean a volume that is being - mounted by another job. -- Runscript timing set to same as version 1.38.11 -- New TLS Allowed CN directive(s) permitted. -- New bconsole 'exec' command to run external script/command. -- Turn on FreeBSD/OpenBSD code to set EOT model on tape. -- Drop from root done before database is opened. -- Database user and name can be configured with: - --with-db-name=name --with-db-user=user -- Turn on wait_for_drive in mtx-changer script. -- Rework how bar codes are handled in mtx-changer script. - This appears to have been an unreported bug. -- Updated nagios plugin supplied by Christian Masopust -- Better restricted console ACL checking. -- New Client Connect Wait directive in Storage daemon so that - users can configure how long SD waits for FD connection. -- Bacula will no longer permit pruning of the currently running - job (note, if other jobs are running, they may be pruned). -- Sockets are no longer restored. -- dbcheck works in 300K chunks so will typically run faster. -- Include/Exclude lists can now be efficiently handled for quite - large sizes -- tens of thousands of entries. -- Several memory leaks in migration and database usage were fixed. -- New console keyword restoreclient, which specifies the client to - which the restore will be sent. The client keyword specifies - the backup client. The restoreclient keyword is optional if it is - not specified, the backup client will also be the restore client. -- The disk file size is now checked to ensure that it agrees with the - catalog value before Bacula will append to the disk (same as tape - and DVD). diff --git a/docs/techlogs/technotes-2.1 b/docs/techlogs/technotes-2.1 deleted file mode 100644 index 371bf94d..00000000 --- a/docs/techlogs/technotes-2.1 +++ /dev/null @@ -1,992 +0,0 @@ - Technical notes on version 2.2 - -General: - -Release Version 2.2.0 -09Aug07 -kes Apply a second doc patch from Marc. -kes Apply a doc patch from Marc Schiffbauer that - improves the tips section that discusses how to setup multiple - simultaneous jobs. -08Aug07 -kes Update bat README file. -kes Apply patch from Allan Black that - corrects a typo in the Recycle status check in db_find_next_volume(). - This will probably fix a number of annoying problems with multiple - Recycled volumes. -kes Modify most of dird/msgchan.c to use bsock class calls rather than - bnet calls -- no functionality change. -07Aug07 -kes Modify the Verify output to specify if files are missing on - the Volume(s) or disk. Fixes confusion in bug #916. -kes When more than one Volume is read in a migration job, the last - Volume bytes reported are from the last read volume rather than - the last written volume. Fixed. This fixes bug #910. -kes Fix display of Recycle flag after update volume=foo recycle=yes. - It previously printed New Recyle flag is: no. This fixes bug - #917. -06Aug07 -kes Correct seg fault when switching tape drives during restore. -kes Commit uid_gid_name.c (replacement for idcache.c), but will not - be used until after 2.2.0 release. -04Aug07 -kes Remove fnmatch() in SD that permitted wild card specifications. - This fixes bug #914. -31Jul07 -kes Fix %g in filename returned by SQL for browse tree reported by - Dirk. -kes Fix configure so that it puts config.out in the cwd rather than - in src/qt-console -kes Attempt to fix the locking problem reported by Eric in bug #906. -kes Make berrno class to leave errno unchanged after constructor call. -kes Make bnet_server use the heap rather than the stack to allocate - its socket fd pointers to avoid a crash at termination. Problem - reported by Ryan Novosielski and bugs pointed out by Martin Simmons. -30Jul07 -kes Create new depkgs and depkgs-qt separating the qwt out of depkgs - and putting it in depkgs-qt along with Qt4.3. -29Jul07 -kes Rework code in acquire.c that switches drives for reading when - the Media Type does not match. This should fix bug #906 -28Jul07 -ebl Fix a director segfault during job setup #907 -kes Correct seg fault in postgresql when first operation returns no - rows. Fixes Dirks File browser problem seg fault with bat. -25Jul07 -kes Apply patch from Felix Schwarz that allows - building wxconsole on Fedora 7 with wxWidgets 2.8 (it works with - 2.6 as well). -24Jul07 -kes Implement PopUp YES/NO dialog for bat. -23Jul07 -ebl Fix a compilation bug when using #define BACL_WANT_NUMERIC_IDS -22Jul07 -kes Correct RunScript to terminate job in FD on failure. -kes Change abort_on_error and AbortJobOnError to fail_on_error - and FailJobOnError in RunScripts. -kes Minor tweaks of code formating in RunScripts, principally to - avoid depassing 80 columns. -21Jul07 -kes Eliminate one #ifdef Win32 in bsmtp -kes Implement grow tool to grow a file for testing very large databases. -kes Add big-vol-test to test Bacula seeking with > 5GB. -Release 2.1.28 beta -19Jul07 -kes Modify find_next_volume() to return all values in Media record. -kes Ensure that we keep Recycle Pool when moving Scratch volumes. - -Release 2.1.28 beta -18Jul07 -kes Update Release notes -17Jul07 -ebl fix a bug in get_scratch_volume() report by Andreas Helmcke - Warning, in previous beta version, all media get from scratch keep their - old retention. -16Jul07 -kes Tweaked Win32 installer to remove temp conf files at uninstall time. - This should fix bug #842. Made a note to look at removing the temp - files at the end of the install. -kes Add ability to mount and unmount a file device providing it is - marked as being removable and has the appropriate mount and unmount - commands defined in the Device resource. This fixes bug #830. -kes When applying a storage override, release all previous storage - definitions rather than just prepending the new storage. - This should prevent a good deal of confusion. -14Jul07 -kes Implement ./configure search for qwt libraries. -13Jul07 -kes Disable posting the WM_CLOSE message in KillRunningCopy of the - Win32 FD. This should fix bug #893. -kes Remove an unnecessary beep in Win32 init code. -kes Update copyright dates in Win32 executable about boxes. -kes Replace the FSF copyrighted getopt.c and getopt.h in the Win32 - code with a BSD getopt.c and getopt.h. -kes Remove sched.h from the Win32 compat directory -- not used. -kes Remove the Exit menu item from the Win32 tray monitor. If you really - need to shut it down, do it through the services panel or the command - line. -kes Remove some inappropriate Bacula FSFE copyrights. -ebl Tweak status client=xxx to be more easy to parse (more like in 2.0.x) -kes Fix regress config non-portable test as pointed out by - Florian Heigl -kes Fix PSCMD for HP-UX in configure.in to have proper syntax. - as pointed out by Florian Heigl -12Jul07 -kes Fix missing rctx. prefixes on the Darwin code in src/filed/restore.c - Reported by Frank Sweetser. - -Release 2.1.26 beta -12Jul07 -kes Fix client-only build. -kes Integrate client-only fixes for bsys (initgroups) and conio from - Sergey Svishchev for the AIX platform. -kes Make arguments to get_scratch_volume() in same order as other - such calls. -kes Rework the prune_volumes() subroutine so that after purging and - no volume found in desired pool, it will check for a scratch - volume. This prevents recycling the whole scratch pool. -kes Add code to status storage to print boffset_t (largefile support). -11Jul07 -kes Move qwt (Graphics libarary for Qt4) to depkgs. -kes You now need a --with-qwt= to be able to build bat. -kes Update src/win32/cats/bacula_cats.def to include the new - db_get_query_dbids() call on Win32. -07Jul07 -kes Correct a problem when selecting a scratch volume and moving - it to another pool that lost some columns. -kes Tweak some code in ua_update.c to use POOL_MEM instead of POOLMEM. -kes Enhance Autochanger error messages to include Volume and device name. -kes Rework prune_volumes() code to take account of InChanger flag, - and to handle recycling volumes going to the Scratch pool and - current pool because the RecyclePool directive. -kes Implement a better and more efficient db_get_query_dbids() to - handle creating and passing back a list of DBIds. - -Release 2.1.24 beta -03Jul07 -kes Start work on new more efficient DBId subroutine. First use - will be for recycling volume to Scratch inchanger. -kes Increase number of JobIds in pruning from 1000 to 10000. - This to be replaced by above routine. -kes Begin implementation of building Qt4 on Win32. -kes Correct typo in fix I added for bad TLS shutdown. -kes Pull 2.0.3 patches into patches directory. -kes Update Release notes. Include qt-console in line count. -kes Update Projects file. -30Jun07 -kes Integrate patch from Sergey Svishchev that fixes - bug in migration code where a job that spanned two volumes - was migrated twice. -29Jun07 -kes Implement new BST_DESPOOLING blocked state. Change from locking - during despooling in SD to blocking. This means that other threads - can work with the device structure, in particular the reservations - system while despooling. -28Jun07 -kes Fix return in reservation message queue that missed clearing - the jcr lock (implemented 26Jun07 below). -kes Rename a number of dev methods to make locking function names - a bit clearer. -kes Document locking in lock.c. Move lock structures to new file - lock.h. -26Jun07 -kes Move reservations message lock to lock jcr only this - fixes bug #861. -kes Move main SD locking code into lock.c (new file). -kes Update Win32 build to include lock.c - -Release 2.1.22 beta -26Jun07 -kes Dirk committed the qwt library code for drawing graphs in bat. -kes Tweak install of qwt so that it is integrated with ./configure. -25Jun07 -kes Fix HAVE_BATCH_INSERT to be HAVE_BATCH_FILE_INSERT, pointed - out by Eric (my typo). -ebl Fix configure.in to get batch mode enable -kes Return correct string from authenticate.cpp in bat when connecting - to Dir. -kes Apply patch suggested by Frank Sweetser to fix bug #888 -- - spurious line drops when using TLS. -kes Do not file reparse points when restoring a file that already - exists -- Win32. -24Jun07 -kes Implement Windows reparse points -- similar to directories, but - we do not descend into it. This is a first cut. They seem to - be backed up, but restore is not yet tested. -kes Remove restore_blocking in tls code when shutting a socket to leave - it in blocking mode. Hopefully this will fix the encryption bug - reported by Frank Sweetser. -kes When opening a file for backup, tell the OS that we are going to - read it sequentially -- optimization. -kes Change variable names in authenticate_director() to not conflict - with member names in bat. Caused great confusion with compiler, - but no warnings. -23Jun07 -kes Queue openssl error messages in case of comm problem. -kes Do shutdown() call if socket terminated. -kes Remove some duplicated code in tls.c -kes Move more of the bsock member variables into private and access - them with methods. -kes Add Frank Sweetser's tls-test to the regression suite. -22Jun07 -kes Add Swedish sv.po file -21Jun07 -kes Don't print clock skew message in FD if less than 3 seconds diff. -kes Add a bit of VSS info to status client. -kes Implement a first cut of Vista VSS, using Win2003 code. - -Release: 2.1.20 beta -20Jun07 -kes Fixed bug #886 (multidrive autochanger: SD doesn't use drive with - loaded tape but uses first drive). -kes Fixed bug #807 Restore encrypted backup failed on Windows 2003 - This was indeed a Win32 issue. -19Jun07 -kes Simplify search of autochanger for in-use Volume. -kes Fix exit condition of check for in-use volume. kes Remove - inappropriate my_postgresql_free_result() in db_close() - routine. -kes Fix bad return in FD when encryption signature not found. - Probably caused a crash. -kes Inhibit missing encryption signature error messages for - file types where no signature computed. -kes Correct inverted check on autochanger in reservation system. -kes Tweak debug code in autochanger reservation. -18Jun07 -kes Add some additional locking in the cats directory in subroutines - that modify packet variables called from batch insert. -kes Rework how dcrs are allocated. new_dcr() can now be called - with an existing pointer, and it will simply clean it up. - This allows the reservation system to test various different - devices, and will permit easy device changes. -kes A bunch of changes all over to handle new new_dcr() calling - sequence. -kes Work more on the Volume management in the SD. Remember Volumes - for tape drives and for autochangers (even virtual disk changers). -kes When looking at the Volume list to reserve a drive, handle - autochanger names correctly by interating through the changer - devices. Also call the Director to see if a Volume is suitable - for the current job. -kes Fix some bugs in bscan. Make sure all media records are written. - Make sure that valid JobMedia records are written for disk files. - Previously they were completely wrong. -kes Move source tar files for depkgs-mingw32 to www.bacula.org so - that the URLs don't change and so that the developers will all - work off the same copy. Rebuild from scrach. -kes Upgrade Win32 SQLite3 from 3.3.8 to 3.3.17. - -Release: 2.1.18 beta -16Jun07 -kes Fix seg fault in FD from incorrect digest size. -kes Fix argument to non-OpenSSL crypto.c subroutine. - -Release: 2.1.16 beta -16Jun07 -kes Remove a few malloc()s from the encryption code. -kes Use the class calls to bsock in filed/backup.c and restore.c in - place of the old bnet_xxx code. -kes Implement code that does an on the fly calculation of the - signing digest during restore of encrypted files. It makes - a best guess at the algorithm, and if it is not correct, will - then revert to the old code which reads the file after it is - restored. -kes Implement at least one missing crypto stream in stream_to_ascii() -kes Apply patch from William that fixes bug - #877 where a reload with bad syntax causes Dir to exit. - -Cut: 2.1.14 beta (not released) -14Jun07 -kes Do not free a volume on a tape drive until another volume is - mounted and read, or the autochanger unloads the volume. - This should help the SD re-use volumes that are already mounted, - and should fix bug #886. -kes Apply patch from user brettedgar that allows gnome2-console include - the OpenSSL libraries, and hence work with SSL. Fixes bug #885. -kes Apply patch from Lucien Weller that fixes day of week calculation - because of DST flag problem. Fixes bug #887. -10Jun07 -kes Move find_next_appendable_volume() to after acquiring a valid device - in reserve.c. This fixes bug #864 -- confirmed by reporter. -09Jun07 -kes Unable to reproduce bug 872. However added additional testing for - integer. -kes Bug #874 resolved by documenting SQLite limitations. -kes Bug #882 resolved by documenting mtx-changer script for new drive code. -kes Bug #881 resolved by removing typo in mtx-changer script. -kes Made Frank Sweetser's wiki the official Bacula wiki with his - approval. Added a link to the wiki on the web page, and implemented - a backup from http://paramount.ind.wpi.edu -08Jun07 -kes Fix update allfrompool to pass pool name. -07Jun07 -kes Convert to pure GPL v2 license. -kes Fix sscanf problems reported by Peter Buschman that caused - a bus error on Solaris. -kes Rework (simplify) the select prompt in bat. -kes Move get_jobid_from_tid() into lib and create a - get_jcr_from_tid(). -kes Use get_jcr_from_tid() to conver all tls Emsg() to Jmsg(). This - should definitely fix the problem of lost error messages in the - encryption code. -kes Remove over zellous addition of FSFE copyright in a few eggxxx files. -kes Eliminate tcpd.h from the project. Enclose the #include from the - library with extern C ... -kes Add print of signal name when a signal is trapped. - -Release: 2.1.12 beta -04Jun07 -kes Fix a seg fault in the PostgreSQL driver dereferencing a NULL pointer. -03Jun07 -kes Implement SQLITE3_INIT_QUERY in version.h that can do an initial - query for SQLite3. Use it to set PRAGMA synchronous = OFF. This - makes SQLit3 run 30 times faster, though a bit less safe. -kes Implement --with-batch-insert in configure and detection of thread - safe libraries. It is on by default, but turned off if no thread - safe library (e.g. SQLite 2) is available. -02Jun07 -kes Fix Bacula PostgreSQL buffer overruns. -kes Do better checking for NULL results returned from PostgreSQL; - implement retry for failed queries; clear results buffer after - failed query. Hopefully this will correct the PostgreSQL failures. -01Jun07 -kes Implement algorithm to handle only one appendable volume with - Prefer Mounted Volumes = no. -kes Fix a Bacula PostgreSQL bug dereferencing a NULL pointer - returned from a query. -kes Make volume lock recursive. -kes Implement an additional volume reservation algorithm that - starts by considering all reserved volumes then uses the - old brute force algorithm of searching the resources to - find a suitable device. -kes Add new reservations debug code and refine the old code. -kes Update the win32/dll/bacula.defs file. -29May07 -kes Tweak reservations algorithm to permit a few more cases, i.e. - volume reserved, but on different drive, ... -kes Enhance SD status to include Pool and Media Type for drive in a - more readable format (a bit longer). -kes Fix PostgreSQL double free. -28May07 -kes Minor refactoring of restore decryption code. -kes Add code to smartall.c to detect double free of a buffer. -27May07 -kes Add < > around %r in from field on mail command of bacula-dir.conf.in - so that bsmtp will create a correct email address (mailbox only). -kes Modify 'memory' command so that the buffers are listed as 'In use' - to avoid confusion with Orphaned buffers. -kes I reworked the OpenSSL include/lib flags to be handled in - the standard Bacula way, which should fix bug #863 concerning - non-standard OpenSSL libraries. -26May07 -kes Implement Help Browser window for bat. -kes Fix reload bug that reset StorageId to zero. -25May07 -kes Fix TLS #ifdefing when TLS turned off. -kes Ensure that when labelling a tape with Slot=0 that InChanger - is not set. -kes Use DISTINCT to make MySQL and PostgreSQL uar_list_temp query - the same. -kes Add StartTime to final uar_sel_jobid_temp query so that we can - add DISTINCT (required by PostgreSQL). -kes Implement BSOCK authenticate_director() method. Eventually will - authenicate all daemons. -kes Move several more functions into the BSOCK class. -24May07 -kes Add code to tell the OS that we no longer need a cached - file that we were reading. In findlib/bfile.c. Also, - only cache files that we are reading. Thanks to - Tobias Oetiker for the idea. -kes Tweak to bsmtp to eliminate compiler warnings on Win32. -kes Implement script to automatically generate cats and dll .def - files for Win32 dll. -kes Update README.mingw32 to include new .def file generation. -kes Correct typo in UTF-8 error message as reported by: - jhernandez -kes Add additional sm_check() code on debug level 1. -kes Set default debug level to 1. -kes Trap SIGABRT in attempt to get traceback. -23May07 -kes Reduce bat connect timeout from 30 to 15 seconds. -kes More restructuring and implementing BSOCK class in place of - old bnet.c code. -kes Remove a few unnecessary malloc() tests in crypto code. -kes Turn off crypto calls for > 128 bits in crypto.c if HAVE_SHA2 - not defined. Bug reported by Allan Black -kes Remove duplicate HAVE_CRYPTO definition in config.h.in -22May07 -kes Fix Verify InitCatalog mysql_escape_string() trashing memory. - Make buffer bigger. -kes Fix Verify InitCatalog. The attributes were not pointing to the - correct saved location. -kes Implement message callback so that GUI is sure to get all - daemon messages. Currently displayed in a dialog in bat. -kes Ignore SIGUSR2 (Bacula timer) in bat. -kes Apply regress patch from bug #859 to allow regress to work - with Solaris compiler. -21May07 -kes Begin adding TLS support to bat. -kes Apply UTF-8/16 patch from Yves Orton to - clean up lex.c and make it more readable. -20May07 -kes Move more bnet functions into the BSOCK class. -kes Fix tray-monitor by not requiring a timer interval in bnet_connect() -kes Complete change of berrno strerror() method to bstrerror() - -Release: 2.1.10 beta -18May07 -kes Cleanup incorrect email addresses in bsmtp. -kes Make bat display initial messages rather than discard them. -16May07 -kes First cut of adding .mod to the run command. -kes Implement auto display of messages in bat. -kes Enhanced preferences to allow all Bacula output to be - displayed in bat. -15May07 -kes Try to make bsmtp date routines more generic. -kes Fixed bug #856 autochanger documentation. -kes Rework bsmtp date editing for Win32. This fixes bug #854. -kes Add new cats entry point so Win32 builds. -14May07 -kes Attempt to fix bsmtp date editing on OSes without %z editing. - Fixes bug #854. -kes Do better checking for the MySQL 64 bit libraries looking for both - .a and .so libraries. -kes Add a kludge for Ubuntu's non-standard locations for MySQL -- allow - /usr/include/mysql/mysql.h AND /usr/lib/... rather than /usr/lib/mysql/... -kes Require the thread safe version of MySQL during configure. Thanks - to Andre Noll for pointing this out. -kes Ensure that calls to find_jobids_from_mediaid_list() check count before - continuing in migration code. -kes Apply implementation of tray-monitor font derived from gnome-console - submitted by Andreas Piesk -13May07 -kes Eliminate important memory loss in SQLite -kes Fixed the batch insert MySQL thread specific data that was not - being freed. See cats/mysql.c:db_thread_cleanup(). -kes Fix restore before command. -kes Convert old hdr.name to name() in a few places. -kes Implement update jobid command. -kes Return all time_t dates in db_get_job_record() -kes Stop watchdog in SD earlier. -kes Put Pool just after Storage in please mount message. -kes Fix pointer usage bugs in Verify InitCatalog pointed out by - Eric. -12May07 -kes Update the po files. -kes Fix Verify InitCatalog by making it cache attributes. -11May07 -kes Change name bacula-bat to bat for man 1 page to correspond to - Makefile. -kes Check for client and store NULL pointers in status command. This - fixes bug #845. -kes Fix non-ssl build so that it works (add JCR *jcr to crypto structures). -kes Fix sign extended editing of %p. -kes Clean out a little old #ifdefing in cats/mysql.c -10May07 -kes If time diff between DIR and FD is more than 600 seconds convert - INFO message to WARNING. -kes Implement heap size display in status for all daemons. -kes Attempt to fix MySQL db open memory loss (not successfull). -kes Don't set SIGKILL and SIGSTOP neither can be trapped. -kes Eliminate memory loss in MySQL (possibly other SQLs) during - Query. This looks like a MySQL but but by doing extra releases, - the memory goes away. This should fix bug #847. -09May07 -kes When backup fails, cancel SD before waiting for sd termination. -kes If SD is waiting for FD to connect during cancel, wake up the - thread. -kes Fix fsf code so that errno is correctly reported. -kes Apply migration patch (with changes) from Sergey Svishchev -08May07 -kes Make lack of Pool directive in Job an ERROR_TERM rather than FATAL - so that Bacula doesn't later stumble into a seg fault. -kes Use the term Restore Client in the restore Job report. -kes Merge patch from Sergey Svishchev that preserves - the original job's FileSetId. -kes Merge patch from Sergey Svishchev that implements - spooling in migration jobs. Not yet tested. -kes Merge patch from Jorj Bauer 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 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 new 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 - 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 -- scheduler problem. -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 diff --git a/docs/techlogs/technotes-2.4 b/docs/techlogs/technotes-2.4 deleted file mode 100644 index 53dc057c..00000000 --- a/docs/techlogs/technotes-2.4 +++ /dev/null @@ -1,1797 +0,0 @@ - Technical notes on version 2.4 - -General: -14Apr09 -kes Fix bug #1246 Sometimes access denied with VSS enabled. UCS - conversion cache was not properly flushed at the end of a Job. -27Mar09 -kes Backport label failure patch. This fixes bug #1227. -20Mar09 -kes Fix editing of a few time_t variables to make them 32/64 bit - independent. This fixes bug #1247 - 64-bit time_t and varargs - don't get along in some printf-like formatting. More work needs - to be done, but this should be fixed in 2.5.43. -kes Convert seconds.seq separator into seconds_seq so that Bacula - editing of the Job name from the full Job name works. This fixes - bug #1255 'variable %n changed'. -16Feb09 -kes Backport code from the development SVN and should fix bug #1213, - which is a deadlock in the SD when a volume is on the wrong drive. -11Feb09 -ebl Apply 2.4.4-fortify.patch that should fix the _FORTIFY_SOURCE - problem. -30Jan09 -kes Fix a text sizing problem in the tray-monitor reported in - bug #1219, with patch included. -22Jan09 -kes Fix bug #1211 crash during reload with bad dird.conf file. -10Jan09 -kes Fix bat.pro.in so that bat will install. -07Jan09 -kes Fix bug #1212, SD is unable to recycle purged volumes. fstat() - was broken. - -Release Version 2.4.4 -28Dec08 -kes Apply fix suggested by Bruno Friedmann to configure.in to - find python2.5 - -Release Version 2.4.4-b2 -23Dec08 -kes Fix bug #1208. Inappropriate Volume purging. -22Dec08 -kes Modify sql_update.c to edit zeros rather than NULL in unset - fields. This should fix bug #1206, where apparently the user - has modified the Bacula schema. -20Dec08 -kes Backport most recent changes to compat.h and compat.cpp. -13Dec08 -kes Create and apply 2.4.3-migrate2.patch, which fixes two bugs - - Bug #1206 -- sql error when there are no files to migrate. - - Bug #1171 -- Job catalog log is not migrated during migration. - -Release Version 2.4.4-b1 -03Dec08 -kes Apply 2.4.3-sd-deadlock.patch that should fix bug #1192. -02Dec08 -ebl Remove extra db_lock() in get_prune_list_for_volume() -ebl Apply 2.4.3-prune-deadlock.patch that fixes a problem when - using Catalog as message backend. -20Nov08 -ebl Apply 2.4.3-win32-runscript-unicode-path.patch for #1110 - about a problem when executing a program with Unicode path. -ebl Apply 2.4.3-unique-inchanger.patch fix for #1175 about bad slot - number if the volume is not in autochanger. -18Nov08 -kes Probably fix for bug #1188 where Volume is purged while writing - on it. -kes Get message enhancement to avoid job name lookup. -07Nov08 -kes Fix bug with job name duplication if more than 60 jobs created - during a minute. -kes Correct some bugs of cleanup in SD if the FD connection fails. -02Nov08 -kes Fix orphaned jobs (possible deadlock) while pruning. -31Oct08 -ebl Backport of the btraceback script that keeps trace file on working dir -28Oct08 -kes Migrate DB Log records too. This fixes last part of bug #1171. -24Oct08 -kes Modify SQL so that jobs that failed will not be migrated. -kes Correct bug where long retention periods caused immediate - pruning. - -Release Version 2.4.3 -27Oct08 -ebl Apply 2.4.3-update-slots.patch to fix #1175. About update slots - that don't reset InChanger flag when slot is empty. -10Oct08 -ebl Apply 2.4.2-cancel-non-running-jobs.patch to be able to cancel - a non created job faster. -08Oct08 -kes This should correct bug #1159 where Migration does not properly - respect the Migration Low Bytes directive. -02Oct08 -ebl Fix typo in configure.in that breaks --with-db-password option -24Sep08 -kes This code should fix the race condition that leads to a Director - crash at job end time when the job list is updated. This was reported - in bug #1162. -20Sep08 -kes Remove all double quotes from SQLite creating script and - replace by single quotes as suggested by John Huttley. -08Sep08 -kes Fix SQL case problem that may cause the failure of DiskToCatalog - in bug #1149. -kes Copy missing storage name into edit buffer. As far as I can tell - this never caused a bug. -28Aug08 -ebl Remove catalog dependency for bcopy -ebl Modify catalog scripts to have an easier packaging integration, - using default variables. - Make difference between SQLite3 and SQLite in db_get_type() -26Aug08 -kes Attempt to fix bug #1128 InChanger flag cleared during Migration - job when reading from one autochanger and writing to another. -24Aug08 -kes Add more information to SD acquire.c INFO messages. -kes Fix NULL Volume name error when reading and the drive must - be switched. -14Aug08 -kes Fix a Verify InitCatalog problem where in certain cases - a garbage filename may be entered in the verification database. This - fixes bug #1143. -kes Add space after version before date in bat about dialog. -12Aug08 -kes Fix seg fault in Dir during estimate command with no level value - given. This fixes bug #1140. -08Aug08 -kes Add message to migration job when the target job is already migrated. - This closes bug #1129. - -Release Version 2.4.2 -26Jul08 -kes When a migration job actually runs, re-check the Job record - and skip if the job is already migrated. This should - significantly reduce the problems with bug #1129. -24Jul08 -kes Break the do_swapping into do_unload, do_swapping, and - do_load. It is much more logical that way. -kes Implement a set_dcr_from_vol subroutine in acquire.c for - reading volumes. This allows the dcr to be refreshed after being - zapped when the wrong volume is mounted. - This should fix bug #1126 -- During multiple tape restore, Bacula - does not ask for physical tape change, but rereads same tape -23Jul08 -kes Apply patch submitted for bug #1107 with a small modification. - This fixes a bug where bcopy copied too many records. -kes Make some tweaks to bsmtp based on patch submitted in bug #1124. - This fixes bug #1124. -kes Make the default bat restore Pool be Any. This fixes bug #1118. -22Jul08 -kes Minor cleanups. -kes Fix bug #1125 which reports a SD crash at the end of a tape - during restore. It was a debug statement that should not be - in a release. -20Jul08 -ebl fix #1034 by setting big timeout on mysql connections -19Jul08 -kes Do partial integration of the Win32 bat build created by Eric. -kes Fix bat not to block. -15Jul08 -kes Ensure that SD tried to mount a volume not in an autochanger - at least once before asking for operator intervention. -kes Fix a pthreads bug in the Win32 pthreads emulation code. - -Release Version 2.4.1 -07Jul08 -kes Clear in-use bit on vol when unused while swapping. -06Jul08 -kes Remove sleep at end of ./bacula -kes Clear hash packet for hardlinked files correctly. This corrects - a long standing bug where hardlinked files selected individually - would occasionally not be restored. -05Jul08 -kes Apply Eric's patch to ensure that autoprune does not return - a Volume not in the autochanger unless requested to do so. -kes Correct bat restore display of multiple drives. This fixes - bug #1117. -kes Do find_a_volume() each time an unload is done. This - fixes the failure of maxvol2-test. - -Release Beta version 2.4.1-b2 -04Jul08 -kes Use Qmsg() in job.c watchdog callback. -03Jul08 -kes Release main control rwlock if ABORTing. -kes Make watchdog connect timeout queue messages rather than sending - directly to avoid lock conflicts with the real thread. -kes Remove const char that causes problems with Python, which has - older 'incorrect' headers. -kes Add const char in dbd.c to avoid compiler warnings. -02Jul08 -kes Fix mtx-changer to detect both versions of Ubuntu (Debian) - mt. This fixes bug #1116. -kes Fix failure of 2drive-concurrent-test. Always read label; - clear_unload() only after drive is defined in acquire_for_read(). - -Release Beta version 2.4.1-b1 -01Jul08 -kes Back out bad src/lib/base64.c change. -27Jun08 -kes Generally clean up the manual tape loading code. The main - conceptual change is that when a volume is marked to be unloaded, - its volume name is retained, and it is only marked as unloaded - when either the autoloader says it is unloaded or another tape - is read on that drive. -26Jun08 -kes Fix a recycling problem with two autochangers reported in bug - #1106. This may also (unlikely) fix a second recycling bug as - reported in #1103. -kes Fix a SD lock volumes deadlock problem reported in bug #1100. -25Jun08 -kes Fix format problem in bscan output reported in bug #1105. -22Jun08 -kes Copy more data when restarting a job so that run - overrides are kept. This should fix bug #1094. -kes Backport updates to jobq.c where possible. -20Jun08 -kes Fix bug where SD did not ask operator if the device could not - be opened. Reported by Eric. -19Jun08 -kes Add dbuser to DIR conf file (replaces user). -kes Add --with-db-password to ./configure -kes Fix regress to handle db_password. -kes Fix a couple of pedantic compiler warnings. -ebl Fix bug when starting a restore on a storage that doesn't - have the requested MediaType. -18Jun08 -kes More work on word alignments -- eliminate all ints from - the configuration routines. -17Jun08 -kes Fix bug reported by Scott Barninger where the bacula script - refers to scripts in the wrong directory. Needed to meet the - requirements of recent FHS location changes. -kes Fix word alignment problem on non-Intel 64 bit machines - such as Solaris. This should fix bug #1097 -- bus error in SD. -12Jun08 -kes Add missing win32/patches/wxWidgets.patch to 2.4 repository. - -Release Version 2.4.0 -04Jun08 -kes Update version to reflect the magnitude of the SD changes. -03Jun08 -kes Make sure to clear JS_WaitMedia when operator mounts a Volume. - This fixes bug #1095. -31May08 -kes Add create_postgresql_database.sql to Win32 installer. Should - fix problem reported by Juilio Monteiro. -kes Get correct slot when auto unloading a device. This fixes bug - #1086. -30May08 -kes Fix multiple media restore. -kes Make DEVICE Slot private and access it via a method. - Allows better control over when it is set and cleared. -kes Fix possible seg fault if SQL error. -28May08 -kes Add debug code to SD. -kes Fix renaming a Volume, which used the wrong Volume name. -26May08 -kes If operator has rewind tape, print warning, release tape and - try once more. If tape is positioned somewhere, something went - wrong, so mark the tape in error and try once more. Previously - this error was fatal, now it produces an error message. -kes Ensure correct volume name displayed during restore -kes Ensure that Volume is mounted for restore. -25May08 -kes Fix a few more Coverity reported problems. - -Beta Release Version 2.2.10-b4 -24May08 -kes Enhance a couple of SD debug messages. -kes Tweak unload flag setting and ensure it is set during swap. -23May08 -ebl Fix #1091 about bad output in estimate command. -21May08 -kes Modify autochanger locking to attempt to avoid race - conditions. -kes Make sure device not busy before doing label command. -kes Display open() errors except when polling. Previously too - many were suppressed. This should fix bug #1070. -kes Fix Win32 reparse points. Bacula will not recurse into any - reparse point directory, including mount points, unless the - directory is explicitly mentioned at the top level (same as - with Unix). A file that is linked to another file will be - backed up -- much as Unix does for hardlinked files. - This fixes bug #1041. -20May08 -kes Remove double quotes from ChangeLog and ReleaseNotes -kes Remove StorageId test when pruning and recycling (Eric's changes). -kes Remove old form of locking when getting volumes -- causes deadlock. -17May08 -kes Fix buffer overruns detected by Coverity. - -Beta Release Version 2.2.10-b3 -13May08 -kes Tweak joblog display. -12May08 -kes Implement --without-qwt -kes Fix layout of restore tree dialog -kes Add configure bat QWT libraries, so that bat can be built - with or without the QWT libaries. -11May08 -kes Apply batfix bat cleanup patch from Riccardo. -kes Make sure we unload the right slot when swapping. -08May08 -kes Improve SD reserve debug code. -kes Testing an improvement to free up volumes no longer in use. - -Beta Release Version 2.2.10-b2 -07May08 -03May08 -kes Rework SD acquire for read to handle autochanger Volume - swapping. -kes Implement regression that explicitly tests swapping a Volume - from one drive to another. -kes Enhance disk-changer to detect most error conditions. -kes Fix SD code so that it properly swaps a Volume between drives. - This fixes bug #1083. -01May08 -kes Prevent a Volume that is being swapped from being freed from - the volume list. This will most likely fix, at least partially, - bug #1083. -kes Fix strippath so that it does not get a buffer overrun and crash FD. - This fixes bug #1078. -kes Make inability to change owner/group when creating a dir only a - warning rather than an error. -28Apr08 -ebl Fix SQL query in migration code -19Apr08 -kes Force unload of volume when wrong volume mounted in SD. -17Apr08 -kes Fix bat seg fault at termination. -kes Add Bacula generated version to bat about box. - -Beta Release Version 2.2.10-b1 -16Apr08 -kes Permit multiple simultaneous restores -- experiment. -15Apr08 -kes Backport development stream SD reservation system changes. - See below: -16Apr08 -kes Move final volume swapping code to DCR method and - call it from acquire_for_read(). -kes When wrong volume is mounted during read, unload_autochanger. -14Apr08 -kes Stop searching for Volumes in SD askdir if DIR returns the - same volume name twice in a row. -13Apr08 -kes Tweak the swap Volume from one drive to another code so that - it now seems to work. -kes Resolve several problems with recycling that broke the new - code (these problems are in 2.2.9 as well). -kes Remove the volume lock when calling the sysop code. -kes Don't mark a reserved volume with no writers as unused otherwise - jobs fail. -12Apr08 -kes Rework class structures for VOLRES, DCR, and DEVICE to make - the method names a bit more logical, and for more logically - handling the responsibilities. -11Apr08 -kes Remove redundant code in terminating the scheduler that just - causes a seg fault in many cases. -kes Cleanup releasing a volume and make it a DCR method. -kes Improve algorithm for detecting pre-reserved volume and - swapping volumes. -10Apr08 -kes Tweak volume swapping code so it works. -kes Correct name overloading in mount.c -kes Replace released flag in VOLRES with reserved and add access - methods for the VOLRES class. -kes Prevent volume from being released while being swapped. -kes Refactor parts of stored/mount.c -09Apr08 -ebl Add sanity checks for VolWriteTime and VolReadTime -ebl Take care of bad clock changes while computing VolWriteTime - and VolReadTime. This should fix or limit #1066 -kes Correct error string numbers in dird/catreq.c -kes Restructure reserving, acquiring, and mounting volumes. Calls to - autochanger are deferred for mount.c -- simplifes the code. -08Apr08 -kes Do not prune any running job. It just fails the job. -kes Lock the volumes when changing dev->reserved_device and marking - the volume unused otherwise the device can get reserved by - another job before the volume is released, thus blocking it. -=== - -Beta Release Version 2.2.9-b7 -14Apr08 -kes Close bat console windows first to eliminate error message - from the notifier. -kes Remove useless code in Scheduler that causes seg fault on - termination. -kes Correct some SD catalog request error messages. -kes Don't allow pruning of any running job. -kes Turn off code in read_record that causes a seg fault in the SD - when reading past an EOS_LABEL. -kes Turn off unloading the autochanger in reserve.c as it just - causes problems. -kes Lock volumes when unreserving a device. -kes Do not mark volume unused when recycling. -kes When acquiring, don't mark volume unused if it is reserved (busy). - -Beta Release Version 2.2.9-b6 -06Apr08 -kes Eliminate ./configure warning on po directory -kes Fix bug #1063, reuse of freed ptr in list nextvol. -kes Release regex compile buffer in filed/job.c -kes Add proper type of const char in sql_create.c -kes Turn off debug in daemon termination routines -kes Move free_volume_list() before devices are freed in stored.c -kes Fix reference to uninitalized stack variables in bregex.c. - This should correct bug #1067. -04Apr08 -kes Fix possible seg fault in SD when freeing a volume entry. -02Apr08 -kes Apply patch from bug #1069 that corrects spurious error messages - when ACLs enabled on SGI but no ACL exists. -ebl Fix a storage deamon segfault at debug level 500. - -Beta Release Version 2.2.9-b5 -- not released - -Beta Release Version 2.2.9-b4 -01Apr08 -kes Re-enable code to remember last volume mounted on a non-tape - Autochanger. -kes Add patch supplied in bug #1068 that fixes a SD crash when using - a Virtual autochanger. -kes Generate correct JobMedia records during spooling/despooling when - running concurrent jobs. Thanks to Tom Ivar Helbekkmo - for excellent analysis and testing. - -Beta release Version 2.2.9-b3 -27Mar08 -kes Rework certain SD locking based on gdb tracebacks of deadlocks - sent by Eric. This code now uses only the volume_lock() rather - than the reservations lock when at EOM and acquiring a new - volume. -kes Ensure only one exit point in several subroutines. - -Beta release version 2.2.9-b2 -24Mar08 -kes Fix to initial tape drive open to release the volume name - -Beta release Version 2.2.9-b1 -22Mar08 -kes Fix to JobMedia fix. -kes Fix bug pointed out by Peter Much that causes the StorageId to - be updated when reading a tape (during migration, it could have - been incorrectly set to the write StorageId). -21Mar08 -kes Implement autostart scripts for Debian -20Mar08 -kes Fix mtx-changer.in for broken Debian mt program. -19Mar08 -kes Massive commit of all fixes and back ports to create 2.2.9 -18Mar08 -kes Apply doc fix from bug #1062. -kes Resolve crash and improper restore wx-console Win32 restore - GUI. Fixes bug #1065. -kes Update Win32 wxWidgets to latest version. -kes Attempt to do correct handling of Win32 mount points. Should - fix bug #1046. -kes Fix Win32 FD backup/restore memory leak due to improper termination - of BackupRead/Write. This fixes bug# 1038. -kes Add const to AIX prototype for initgroups() -27Feb08 -kes Undo bug #1047 heap overrun fix as it is not correct. -14Feb08 -kes Fix creating first JobMedia record during Migration to include - proper index. This caused slow restores of migrated jobs. -10Feb08 -kes Fix bug #1047, which had a heap overrun when stripping certain paths, - and do not strip paths on symbolic links. -kes Set catalog backup database and user name from values specified on - the ./configure line. -ebl Apply patch to correct bug #1031, about wrong pool source information - in job report. - -Release Version 2.2.8 -25Jan08 -kes Apply patch from Martin to correct bug #1040, bscan sets existing - ClientId to zero. -kes Fixed important spelling error in doc -- bug #1045. -23Jan08 -kes Move initialization of read/write res lock earlier in the code. - This fixes the crash with a null conf file. This fixes bug - #1030. -kes Redefine CURES in lib/parse_conf to be URES and move it all - into lib/parse_conf.c -- this responds to bug #1042, but does - not fix it. The fix is not to compile with FORTIFY_SOURCE. -kes Backport fix de-referencing a NULL pointer in the scanner from - the trunk SVN. I don't think this was reported as a bug. - -Beta release Version 2.2.8 -09Jan08 -kes Re-enable the new job code editing (%f). -08Jan08 -kes Fix bsnprintf for float point numbers. I broke recently when - parameterizing some variables. This fixes bug #1036. -03Jan08 -kes Move Heartbeat documentation from Job to Director resource. - This fixes bug #1033. -02Jan08 -kes Fix existing switch drive SD code to call autochanger to release - any old volume. This must be done to keep the autochanger from - releasing subsequently newly reserved volumes in doing a close(). - This should possibly fix bugs #1032 and #1018. -kes Apply big backport of current SVN SD code that corrects a number - of race conditions. This is a first step in fixing bug #1018. -29Dec07 -ebl Fixes bug #1028 where "Selection Type" option was not usable - with JobDefs. - - -Release Version 2.2.7 -24Dec07 -kes Partial back out (disabled) %f job code editing because it - does not build on Win32. -kes Fix seg fault Frank Sweetser reports in regression testing - on his systems. The problem was that the original author of - bsnprintf.c did not take into account the side effects of - using ++x in the argument to a #define. -14Dec07 -kes Apply patch from Michael Stapelberg - that implements double quoting include names in conf files, - and also allows piping input by having the first character - be a vertical bar (|). -kes Apply patch from Bastian Friedrich - that implement %f in RunScripts to pass the FileSet name. -kes Skip leading | when lex input comes from a pipe as suggested - by Michael Stapelberg . -13Dec07 -kes Apply patch for bsmtp Win32 daylight savings time fix supplied by - Nerijus Baliunas -10Dec07 -kes This patch corrects a problem where the maximum concurrent storage - jobs counter gets out of sync during restore jobs causing jobs to - 'wait on max Storage jobs'. This patch fixes bug #1009. -08Dec07 -kes Add new include to postgresql.c suggested by Marc Cousins so - that it compiles correctly with pgre version 8.3. Also fix - misuse of %x with pointer (should be %p). -03Dec07 -kes This patch fixes bcopy so that it produces correct Volumes. - It fixes bug #1022. -kes This patch eliminates spurious output to the console during a VerifyVolume - job that contains encrypted data. It fixes bug #1024. -02Dec07 -kes This patch prevents the 'status dir' command from trying to use a scratch - volume and possibly moving it from one pool to another. This patch fixes - bug #1019. -30Nov07 -kes Fix --archivedir addition to configure. Replace it with - --with-archivedir in configure.in This fixes the regression - test builds. -kes This patch fixes bug #1012 where the job is canceled because - of Max Run Time exceeded when the job has not yet started. -29Nov07 -ebl Apply Richard Mortimer patch that fixes #1016 when there are more than - one 'part' to write. Instead of each part being stored on disk, - written to DVD, then deleted from disk, all parts are written to disk, - and only the last is written and deleted from disk. -27Nov07 -kes Correct typos in disk-changer.in -25Nov07 -kes This patch fixes the status command to include the formating string for - JS_AttrInserting. It fixes bug #1021. -kes This patch should fix the Mac OS X build problem on the latest - Darwin, where sys/types.h was not included correctly (apparently - due to a change in the Mac headers). The solution was to explicitly - ensure that it is defined for the ./configure. - This patch also has a rebuild of configure that includes the Debian - qt4 patch to check for qmake-qt4. This patch fixes bug #1020. -kes This patch should ensure that queued messages to the console are - displayed as soon as possible. It should fix bug #1007, but has been - reported not to work. -14Nov07 -kes This patch fixes the infinite loop when trying to increase the - maximum number of volumes in a Pool during the add command. - This patch fixes bug #1008. - -Release Version 2.2.6 -09Nov07 -kes Get fix for joblist bug in bat from trunk. -04Nov07 -kes This patch fixes bug #1003 where putting the message output from - a Verify job into the catalog results in a recursive loop. The problem - seems to show up only with postgresql (to be verified). -02Nov07 -kes Fix bug #942 where lots of emails where generated when the heartbeat - interval was low and Bacula wanted a different tape from the one in - the drive. -26Oct07 -ebl Apply 2.2.5-lastwritten.patch to fix the LastWritten field - which was updated during a restore (or a reading migration) bug #982 -24Oct07 -ebl Use qmake-qt4 instead of qmake when available (debian system). -22Oct07 -kes Add a security warning to src/cats/make_catalog_backup.in indicating - that passing the password via the command line (arg 3) is insecure. - This responds to bug #990 (it doesn't fix it). -kes Apply 2.2.5-postgresql-errors.patch -kes Remove unneeded File table index on JobId, which is already - present as the first index of another multi-index. -19Oct07 -kes Set default debug_level to zero. This corrects bugs #991 and #993. -kes Fix a crash in bat when it cannot connect to the Director for example - if the Director is not running. -16Oct07 -kes Activate Close button on tray-monitor window. This fixes - bug #986. -12Oct07 -kes Fix spurious warning message printed when creating a volume with - a LabelFormat. This fixes bug #976. - -Release Version 2.2.5 -09Oct07 -kes Add JobId in place of Job name in all the Jmsg() output. -kes Correct the APP_DESC for the Win32 storage service (remove an e). -06Oct07 -kes Add new SD despooling attributes and Dir inserting attributes - job status codes. This fixes bug #961. -kes Fix Win32 drive display in bat version browser. Fixes bug #962. -05Oct07 -kes Fix doc issue. This fixes bug #963. -kes Fix listing performance problems in bat. Pointed out by - Chris Howells. -ebl Fix replace on restore. This fixes bug #969 -kes Fix bat code that tests for Win32. This should fix bug #968 -kes Query 5 list wrong Vol after migration. This fixes bug #960 -04Oct07 -kes Correct lib/Makefile.in to include enh_fnmatch.o that was removed - in back porting from 2.3.x -03Oct07 -kes Backport almost 4000 lines of 2.3 code that fixes a number of bugs. - The details are included in the notes in this file. -28Sep07 -kes Backport 2.3 code that fixes: it fixes incorrect or incomplete error - messages; it fixes a problem opening the SQLite3 database when multiple - simultaneous jobs were running; it fixes a bug with certain versions of - MySQL where batch inserts failed because of table name character case - (upper/lower) differences. -kes Fix race condition that drops final block written to volume. - This happens in rare cases with multiple simultaneous jobs - when the Volume fills. This fixes bug #964. May be related - to bug #935 and possibly #903. -27Sep07 -kes Fix FD->SD authorization failure, which was due to spurious - wakeups from a pthread_cond_timedwait(). Simply check the - predicate before continuing. This fixes bug #953 -dvl Add new configuration item --archivedir -dvl Adjust regression tests to use tmp not /tmp. This will allow - multiple concurrent runs of the regression tests. -28Sep07 -kes Eliminate more strerror() and replace with bstrerror(). -kes Remove BSD getopt and replace with unrestricted IBM version. -kes Fix Win32 build for changed calling sequences. -27Sep07 -kes Fix FD->SD authorization failure, which was due to spurious - wakeups from a pthread_cond_timedwait(). Simply check the - predicate before continuing. This fixes bug #953. -kes Add const char where needed (more to do). -26Sep07 -kes Setup SQLite busy handler before doing queries. Fixes bug #967. -kes Don't overwrite error message in check_tables_version. - Fixes bug #966. -kes Unlock batch insert tables with same calls used elsewhere. -kes Allow starting 59 jobs a second. -kes Make SD session key more random. -kes Add retry for SQLite opening db if it fails. Probably helps - for bug #967. -kes Suppress extra error messages during batch insert failure. - Fixes bug #966. -kes Put some FD auth code on dbglvl rather than fixed. -kes Return insert attributes error message in db msg buffer to avoid - false error messages. Helps fix bug #966. -kes Separate batch init error messages. Probably helps fix bug #966. -kes If Dir gets an error during inserting attributes, cancel SD. - This reduces unnecessary error messages. -24Sep07 -ebl Cleanup batch insert code. Probably fixes bug #965. -23Sep07 -kes Turn off some code when batch insert not enabled. -kes Edit FD name in connect error messages. -22Sep07 -kes Add code to handle tray monitor separated from Win32 FD. -kes Fix display of Win32 tray monitor after reboot. Fixes bug #952. -20Sep07 -kes Fix ANSI tape labeling. This fixes bug #954. -kes Increase the max block size to 4MB fixes bug #957. -kes Apply 2.2.4-poll-mount fix, that resolves bug #908 where a tape - is not properly mounted (recognized) during a poll. -kes Apply 2.2.4-verify patch that resolves bug #958. A Verify catalog - Job that has differences reports Verify OK. -ebl Fixes #955 bug seg fault in Dir introduced with regexwhere relocation. - -Release Version 2.2.4 -14Sep07 -kes Increase size of name string when FD making connection to SD. - May fix bug #953. -13Sep07 -kes Add waits to multiple exit detection code to try to force pid - file to always be deleted. -kes Restore good dev.tar.gz to rescue set appropriate binary property. - This fixes bug #950. -kes Fix seg fault in error exit of acquire_for_read after unsuccessfully - trying to switch drives by checking for blocking before unblocking. - Fixes bug #906. -kes Cancel storage daemon in all cases where FD reports error. This - should fix virtually all cases of bug #920. -12Sep07 -kes Fix error message that was clobbered when Dir tells SD it does not - have write permission on Volume. This should fix a minor point - in bug #942, but not the main problem. -kes Add code to cancel job in SD if FD connection fails. This should - fix bug #920. -kes Add code in FD exit to prevent loops and a crash on FreeBSD. -kes Fix migration code to get correct Volume name with multiple volumes - by skipping |. Fixes bug #936. -kes Implement patch supplied by Landon to fix bug #944 where using - TLS with bconsole uses 99+% of the CPU. -kes Note, you need GTK >= 2.10 to be able to link the Tray Monitor - program. -kes Move patches into patches directory. -11Sep07 -ebl Fix bug #946 about 'bacula-dir -t' which doesn't works - as expected. -09Sep07 -ebl Using 'm' in bconsole will show messages like before, - and not memory usage. - -Release Version 2.2.3 -kes Note, you need GTK >= 2.10 to be able to link the Tray Monitor - program. -09Sep07 -kes Fix bug #935, and probably also bug #903 where files were not - restored. MediaId was not properly set in JobMedia record after - a Volume change. -07Sep07 -kes Add ./configure search in qwt-qt4 for qwt package -kes Apply Martin Simmons patch that should turn off the new API usage - when batch insert is turned off allowing building on older - PostgreSQLs. - -Release Version 2.2.2 -04Sep07 -ebl Detect if new PosgreSQL batch insert API is present. -kes Correct incorrect mempool call causing Director crash. -sb Update spec files for 2.2.1 release - -Release Version 2.2.1 -30Aug07 -kes Update POTFILES.in -kes Cleanup a few underquoted AC_DEFUNs in configure -kes Apply patch from Martin Simmons that adds a test for va_copy to - ./configure -29Aug07 -kes Fix bug #921 by increasing the number of tries to create a new volume - from 11 to 100. -kes Rework bmsg in ua_output to use va_copy() so that bvsnprintf() - can be called multiple times. Implement a version for machines - without va_copy() that gets a big buffer. -25Aug07 -kes Integrate more portable zone offset code into bsmtp.c - Submitted by Attila Fülöp. -24Aug07 -kes Fix bad SD->FD return status reported by - (James Harper) -ebl Fix a bug in read_close_session which return random status - thanks to James Harper -23Aug07 -kes Fix (hopefully) bug #930 by doing a db_escape_string() on file - and directory names during restore of single file/directories. -kes Add sanity checks to .sql command when string is empty. Hopefully - that will resolve Dirks Director crash. -22Aug07 -kes Apply patch submitted by Martin Simmons that corrects a seg fault - in the bsmtp chat subroutine when debug is >= 10. -21Aug07 -kes Fix Director crash when running bat SQL queries. -kes Add David's notes on Item 8: Copy pools. -18Aug07 -kes Rework projects file to be current and ready for a vote. -kes Enhance lex scanner error message. -17Aug07 -kes Tweak LICENSE file to mention BSD code. -kes Fix bat.pro.in so that it includes the OpenSSL libraries only - if specified on the ./configure. -kes Add first (not yet tested) cut of bcomm to the qt-console directory. - This class is intended to allow us to open a second bsock to the - Director while in the restore subdialog. -16Aug07 -kes Fix configure to create bat Makefile before creating dependencies. -kes Eliminate the egg files from the tray-monitor. Use gtk calls. -kes Add a tooltip to the tray monitor. -dvl Set the Director's PID file before dropping privs. This fixes - bug #923. -15Aug07 -kes Update AUTHORs file -kes Increase the default max concurrent jobs to 20 in FD and SD to - correspond with the default .conf files. -kes Rewrite the Win32 service routines. This eliminates the 3 copies - some different, of the same file created by RN when porting the - Win32 SD and Dir. -kes Rearrange some of the Win32 directories and the placement of the files - in them. -kes Set DEVELOPER flag in version.h - -======================================================================== -Release Version 2.2.0 -09Aug07 -kes Apply a second doc patch from Marc. -kes Apply a doc patch from Marc Schiffbauer that - improves the tips section that discusses how to setup multiple - simultaneous jobs. -08Aug07 -kes Update bat README file. -kes Apply patch from Allan Black that - corrects a typo in the Recycle status check in db_find_next_volume(). - This will probably fix a number of annoying problems with multiple - Recycled volumes. -kes Modify most of dird/msgchan.c to use bsock class calls rather than - bnet calls -- no functionality change. -07Aug07 -kes Modify the Verify output to specify if files are missing on - the Volume(s) or disk. Fixes confusion in bug #916. -kes When more than one Volume is read in a migration job, the last - Volume bytes reported are from the last read volume rather than - the last written volume. Fixed. This fixes bug #910. -kes Fix display of Recycle flag after update volume=foo recycle=yes. - It previously printed New Recyle flag is: no. This fixes bug - #917. -06Aug07 -kes Correct seg fault when switching tape drives during restore. -kes Commit uid_gid_name.c (replacement for idcache.c), but will not - be used until after 2.2.0 release. -04Aug07 -kes Remove fnmatch() in SD that permitted wild card specifications. - This fixes bug #914. -31Jul07 -kes Fix %g in filename returned by SQL for browse tree reported by - Dirk. -kes Fix configure so that it puts config.out in the cwd rather than - in src/qt-console -kes Attempt to fix the locking problem reported by Eric in bug #906. -kes Make berrno class to leave errno unchanged after constructor call. -kes Make bnet_server use the heap rather than the stack to allocate - its socket fd pointers to avoid a crash at termination. Problem - reported by Ryan Novosielski and bugs pointed out by Martin Simmons. -30Jul07 -kes Create new depkgs and depkgs-qt separating the qwt out of depkgs - and putting it in depkgs-qt along with Qt4.3. -29Jul07 -kes Rework code in acquire.c that switches drives for reading when - the Media Type does not match. This should fix bug #906 -28Jul07 -ebl Fix a director segfault during job setup #907 -kes Correct seg fault in postgresql when first operation returns no - rows. Fixes Dirks File browser problem seg fault with bat. -25Jul07 -kes Apply patch from Felix Schwarz that allows - building wxconsole on Fedora 7 with wxWidgets 2.8 (it works with - 2.6 as well). -24Jul07 -kes Implement PopUp YES/NO dialog for bat. -23Jul07 -ebl Fix a compilation bug when using #define BACL_WANT_NUMERIC_IDS -22Jul07 -kes Correct RunScript to terminate job in FD on failure. -kes Change abort_on_error and AbortJobOnError to fail_on_error - and FailJobOnError in RunScripts. -kes Minor tweaks of code formating in RunScripts, principally to - avoid depassing 80 columns. -21Jul07 -kes Eliminate one #ifdef Win32 in bsmtp -kes Implement grow tool to grow a file for testing very large databases. -kes Add big-vol-test to test Bacula seeking with > 5GB. -Release 2.1.28 beta -19Jul07 -kes Modify find_next_volume() to return all values in Media record. -kes Ensure that we keep Recycle Pool when moving Scratch volumes. - -Release 2.1.28 beta -18Jul07 -kes Update Release notes -17Jul07 -ebl fix a bug in get_scratch_volume() report by Andreas Helmcke - Warning, in previous beta version, all media get from scratch keep their - old retention. -16Jul07 -kes Tweaked Win32 installer to remove temp conf files at uninstall time. - This should fix bug #842. Made a note to look at removing the temp - files at the end of the install. -kes Add ability to mount and unmount a file device providing it is - marked as being removable and has the appropriate mount and unmount - commands defined in the Device resource. This fixes bug #830. -kes When applying a storage override, release all previous storage - definitions rather than just prepending the new storage. - This should prevent a good deal of confusion. -14Jul07 -kes Implement ./configure search for qwt libraries. -13Jul07 -kes Disable posting the WM_CLOSE message in KillRunningCopy of the - Win32 FD. This should fix bug #893. -kes Remove an unnecessary beep in Win32 init code. -kes Update copyright dates in Win32 executable about boxes. -kes Replace the FSF copyrighted getopt.c and getopt.h in the Win32 - code with a BSD getopt.c and getopt.h. -kes Remove sched.h from the Win32 compat directory -- not used. -kes Remove the Exit menu item from the Win32 tray monitor. If you really - need to shut it down, do it through the services panel or the command - line. -kes Remove some inappropriate Bacula FSFE copyrights. -ebl Tweak status client=xxx to be more easy to parse (more like in 2.0.x) -kes Fix regress config non-portable test as pointed out by - Florian Heigl -kes Fix PSCMD for HP-UX in configure.in to have proper syntax. - as pointed out by Florian Heigl -12Jul07 -kes Fix missing rctx. prefixes on the Darwin code in src/filed/restore.c - Reported by Frank Sweetser. - -Release 2.1.26 beta -12Jul07 -kes Fix client-only build. -kes Integrate client-only fixes for bsys (initgroups) and conio from - Sergey Svishchev for the AIX platform. -kes Make arguments to get_scratch_volume() in same order as other - such calls. -kes Rework the prune_volumes() subroutine so that after purging and - no volume found in desired pool, it will check for a scratch - volume. This prevents recycling the whole scratch pool. -kes Add code to status storage to print boffset_t (largefile support). -11Jul07 -kes Move qwt (Graphics libarary for Qt4) to depkgs. -kes You now need a --with-qwt= to be able to build bat. -kes Update src/win32/cats/bacula_cats.def to include the new - db_get_query_dbids() call on Win32. -07Jul07 -kes Correct a problem when selecting a scratch volume and moving - it to another pool that lost some columns. -kes Tweak some code in ua_update.c to use POOL_MEM instead of POOLMEM. -kes Enhance Autochanger error messages to include Volume and device name. -kes Rework prune_volumes() code to take account of InChanger flag, - and to handle recycling volumes going to the Scratch pool and - current pool because the RecyclePool directive. -kes Implement a better and more efficient db_get_query_dbids() to - handle creating and passing back a list of DBIds. - -Release 2.1.24 beta -03Jul07 -kes Start work on new more efficient DBId subroutine. First use - will be for recycling volume to Scratch inchanger. -kes Increase number of JobIds in pruning from 1000 to 10000. - This to be replaced by above routine. -kes Begin implementation of building Qt4 on Win32. -kes Correct typo in fix I added for bad TLS shutdown. -kes Pull 2.0.3 patches into patches directory. -kes Update Release notes. Include qt-console in line count. -kes Update Projects file. -30Jun07 -kes Integrate patch from Sergey Svishchev that fixes - bug in migration code where a job that spanned two volumes - was migrated twice. -29Jun07 -kes Implement new BST_DESPOOLING blocked state. Change from locking - during despooling in SD to blocking. This means that other threads - can work with the device structure, in particular the reservations - system while despooling. -28Jun07 -kes Fix return in reservation message queue that missed clearing - the jcr lock (implemented 26Jun07 below). -kes Rename a number of dev methods to make locking function names - a bit clearer. -kes Document locking in lock.c. Move lock structures to new file - lock.h. -26Jun07 -kes Move reservations message lock to lock jcr only this - fixes bug #861. -kes Move main SD locking code into lock.c (new file). -kes Update Win32 build to include lock.c - -Release 2.1.22 beta -26Jun07 -kes Dirk committed the qwt library code for drawing graphs in bat. -kes Tweak install of qwt so that it is integrated with ./configure. -25Jun07 -kes Fix HAVE_BATCH_INSERT to be HAVE_BATCH_FILE_INSERT, pointed - out by Eric (my typo). -ebl Fix configure.in to get batch mode enable -kes Return correct string from authenticate.cpp in bat when connecting - to Dir. -kes Apply patch suggested by Frank Sweetser to fix bug #888 -- - spurious line drops when using TLS. -kes Do not file reparse points when restoring a file that already - exists -- Win32. -24Jun07 -kes Implement Windows reparse points -- similar to directories, but - we do not descend into it. This is a first cut. They seem to - be backed up, but restore is not yet tested. -kes Remove restore_blocking in tls code when shutting a socket to leave - it in blocking mode. Hopefully this will fix the encryption bug - reported by Frank Sweetser. -kes When opening a file for backup, tell the OS that we are going to - read it sequentially -- optimization. -kes Change variable names in authenticate_director() to not conflict - with member names in bat. Caused great confusion with compiler, - but no warnings. -23Jun07 -kes Queue openssl error messages in case of comm problem. -kes Do shutdown() call if socket terminated. -kes Remove some duplicated code in tls.c -kes Move more of the bsock member variables into private and access - them with methods. -kes Add Frank Sweetser's tls-test to the regression suite. -22Jun07 -kes Add Swedish sv.po file -21Jun07 -kes Don't print clock skew message in FD if less than 3 seconds diff. -kes Add a bit of VSS info to status client. -kes Implement a first cut of Vista VSS, using Win2003 code. - -Release: 2.1.20 beta -20Jun07 -kes Fixed bug #886 (multidrive autochanger: SD doesn't use drive with - loaded tape but uses first drive). -kes Fixed bug #807 Restore encrypted backup failed on Windows 2003 - This was indeed a Win32 issue. -19Jun07 -kes Simplify search of autochanger for in-use Volume. -kes Fix exit condition of check for in-use volume. kes Remove - inappropriate my_postgresql_free_result() in db_close() - routine. -kes Fix bad return in FD when encryption signature not found. - Probably caused a crash. -kes Inhibit missing encryption signature error messages for - file types where no signature computed. -kes Correct inverted check on autochanger in reservation system. -kes Tweak debug code in autochanger reservation. -18Jun07 -kes Add some additional locking in the cats directory in subroutines - that modify packet variables called from batch insert. -kes Rework how dcrs are allocated. new_dcr() can now be called - with an existing pointer, and it will simply clean it up. - This allows the reservation system to test various different - devices, and will permit easy device changes. -kes A bunch of changes all over to handle new new_dcr() calling - sequence. -kes Work more on the Volume management in the SD. Remember Volumes - for tape drives and for autochangers (even virtual disk changers). -kes When looking at the Volume list to reserve a drive, handle - autochanger names correctly by interating through the changer - devices. Also call the Director to see if a Volume is suitable - for the current job. -kes Fix some bugs in bscan. Make sure all media records are written. - Make sure that valid JobMedia records are written for disk files. - Previously they were completely wrong. -kes Move source tar files for depkgs-mingw32 to www.bacula.org so - that the URLs don't change and so that the developers will all - work off the same copy. Rebuild from scrach. -kes Upgrade Win32 SQLite3 from 3.3.8 to 3.3.17. - -Release: 2.1.18 beta -16Jun07 -kes Fix seg fault in FD from incorrect digest size. -kes Fix argument to non-OpenSSL crypto.c subroutine. - -Release: 2.1.16 beta -16Jun07 -kes Remove a few malloc()s from the encryption code. -kes Use the class calls to bsock in filed/backup.c and restore.c in - place of the old bnet_xxx code. -kes Implement code that does an on the fly calculation of the - signing digest during restore of encrypted files. It makes - a best guess at the algorithm, and if it is not correct, will - then revert to the old code which reads the file after it is - restored. -kes Implement at least one missing crypto stream in stream_to_ascii() -kes Apply patch from William that fixes bug - #877 where a reload with bad syntax causes Dir to exit. - -Cut: 2.1.14 beta (not released) -14Jun07 -kes Do not free a volume on a tape drive until another volume is - mounted and read, or the autochanger unloads the volume. - This should help the SD re-use volumes that are already mounted, - and should fix bug #886. -kes Apply patch from user brettedgar that allows gnome2-console include - the OpenSSL libraries, and hence work with SSL. Fixes bug #885. -kes Apply patch from Lucien Weller that fixes day of week calculation - because of DST flag problem. Fixes bug #887. -10Jun07 -kes Move find_next_appendable_volume() to after acquiring a valid device - in reserve.c. This fixes bug #864 -- confirmed by reporter. -09Jun07 -kes Unable to reproduce bug 872. However added additional testing for - integer. -kes Bug #874 resolved by documenting SQLite limitations. -kes Bug #882 resolved by documenting mtx-changer script for new drive code. -kes Bug #881 resolved by removing typo in mtx-changer script. -kes Made Frank Sweetser's wiki the official Bacula wiki with his - approval. Added a link to the wiki on the web page, and implemented - a backup from http://paramount.ind.wpi.edu -08Jun07 -kes Fix update allfrompool to pass pool name. -07Jun07 -kes Convert to pure GPL v2 license. -kes Fix sscanf problems reported by Peter Buschman that caused - a bus error on Solaris. -kes Rework (simplify) the select prompt in bat. -kes Move get_jobid_from_tid() into lib and create a - get_jcr_from_tid(). -kes Use get_jcr_from_tid() to conver all tls Emsg() to Jmsg(). This - should definitely fix the problem of lost error messages in the - encryption code. -kes Remove over zellous addition of FSFE copyright in a few eggxxx files. -kes Eliminate tcpd.h from the project. Enclose the #include from the - library with extern C ... -kes Add print of signal name when a signal is trapped. - -Release: 2.1.12 beta -04Jun07 -kes Fix a seg fault in the PostgreSQL driver dereferencing a NULL pointer. -03Jun07 -kes Implement SQLITE3_INIT_QUERY in version.h that can do an initial - query for SQLite3. Use it to set PRAGMA synchronous = OFF. This - makes SQLit3 run 30 times faster, though a bit less safe. -kes Implement --with-batch-insert in configure and detection of thread - safe libraries. It is on by default, but turned off if no thread - safe library (e.g. SQLite 2) is available. -02Jun07 -kes Fix Bacula PostgreSQL buffer overruns. -kes Do better checking for NULL results returned from PostgreSQL; - implement retry for failed queries; clear results buffer after - failed query. Hopefully this will correct the PostgreSQL failures. -01Jun07 -kes Implement algorithm to handle only one appendable volume with - Prefer Mounted Volumes = no. -kes Fix a Bacula PostgreSQL bug dereferencing a NULL pointer - returned from a query. -kes Make volume lock recursive. -kes Implement an additional volume reservation algorithm that - starts by considering all reserved volumes then uses the - old brute force algorithm of searching the resources to - find a suitable device. -kes Add new reservations debug code and refine the old code. -kes Update the win32/dll/bacula.defs file. -29May07 -kes Tweak reservations algorithm to permit a few more cases, i.e. - volume reserved, but on different drive, ... -kes Enhance SD status to include Pool and Media Type for drive in a - more readable format (a bit longer). -kes Fix PostgreSQL double free. -28May07 -kes Minor refactoring of restore decryption code. -kes Add code to smartall.c to detect double free of a buffer. -27May07 -kes Add < > around %r in from field on mail command of bacula-dir.conf.in - so that bsmtp will create a correct email address (mailbox only). -kes Modify 'memory' command so that the buffers are listed as 'In use' - to avoid confusion with Orphaned buffers. -kes I reworked the OpenSSL include/lib flags to be handled in - the standard Bacula way, which should fix bug #863 concerning - non-standard OpenSSL libraries. -26May07 -kes Implement Help Browser window for bat. -kes Fix reload bug that reset StorageId to zero. -25May07 -kes Fix TLS #ifdefing when TLS turned off. -kes Ensure that when labelling a tape with Slot=0 that InChanger - is not set. -kes Use DISTINCT to make MySQL and PostgreSQL uar_list_temp query - the same. -kes Add StartTime to final uar_sel_jobid_temp query so that we can - add DISTINCT (required by PostgreSQL). -kes Implement BSOCK authenticate_director() method. Eventually will - authenicate all daemons. -kes Move several more functions into the BSOCK class. -24May07 -kes Add code to tell the OS that we no longer need a cached - file that we were reading. In findlib/bfile.c. Also, - only cache files that we are reading. Thanks to - Tobias Oetiker for the idea. -kes Tweak to bsmtp to eliminate compiler warnings on Win32. -kes Implement script to automatically generate cats and dll .def - files for Win32 dll. -kes Update README.mingw32 to include new .def file generation. -kes Correct typo in UTF-8 error message as reported by: - jhernandez -kes Add additional sm_check() code on debug level 1. -kes Set default debug level to 1. -kes Trap SIGABRT in attempt to get traceback. -23May07 -kes Reduce bat connect timeout from 30 to 15 seconds. -kes More restructuring and implementing BSOCK class in place of - old bnet.c code. -kes Remove a few unnecessary malloc() tests in crypto code. -kes Turn off crypto calls for > 128 bits in crypto.c if HAVE_SHA2 - not defined. Bug reported by Allan Black -kes Remove duplicate HAVE_CRYPTO definition in config.h.in -22May07 -kes Fix Verify InitCatalog mysql_escape_string() trashing memory. - Make buffer bigger. -kes Fix Verify InitCatalog. The attributes were not pointing to the - correct saved location. -kes Implement message callback so that GUI is sure to get all - daemon messages. Currently displayed in a dialog in bat. -kes Ignore SIGUSR2 (Bacula timer) in bat. -kes Apply regress patch from bug #859 to allow regress to work - with Solaris compiler. -21May07 -kes Begin adding TLS support to bat. -kes Apply UTF-8/16 patch from Yves Orton to - clean up lex.c and make it more readable. -20May07 -kes Move more bnet functions into the BSOCK class. -kes Fix tray-monitor by not requiring a timer interval in bnet_connect() -kes Complete change of berrno strerror() method to bstrerror() - -Release: 2.1.10 beta -18May07 -kes Cleanup incorrect email addresses in bsmtp. -kes Make bat display initial messages rather than discard them. -16May07 -kes First cut of adding .mod to the run command. -kes Implement auto display of messages in bat. -kes Enhanced preferences to allow all Bacula output to be - displayed in bat. -15May07 -kes Try to make bsmtp date routines more generic. -kes Fixed bug #856 autochanger documentation. -kes Rework bsmtp date editing for Win32. This fixes bug #854. -kes Add new cats entry point so Win32 builds. -14May07 -kes Attempt to fix bsmtp date editing on OSes without %z editing. - Fixes bug #854. -kes Do better checking for the MySQL 64 bit libraries looking for both - .a and .so libraries. -kes Add a kludge for Ubuntu's non-standard locations for MySQL -- allow - /usr/include/mysql/mysql.h AND /usr/lib/... rather than /usr/lib/mysql/... -kes Require the thread safe version of MySQL during configure. Thanks - to Andre Noll for pointing this out. -kes Ensure that calls to find_jobids_from_mediaid_list() check count before - continuing in migration code. -kes Apply implementation of tray-monitor font derived from gnome-console - submitted by Andreas Piesk -13May07 -kes Eliminate important memory loss in SQLite -kes Fixed the batch insert MySQL thread specific data that was not - being freed. See cats/mysql.c:db_thread_cleanup(). -kes Fix restore before command. -kes Convert old hdr.name to name() in a few places. -kes Implement update jobid command. -kes Return all time_t dates in db_get_job_record() -kes Stop watchdog in SD earlier. -kes Put Pool just after Storage in please mount message. -kes Fix pointer usage bugs in Verify InitCatalog pointed out by - Eric. -12May07 -kes Update the po files. -kes Fix Verify InitCatalog by making it cache attributes. -11May07 -kes Change name bacula-bat to bat for man 1 page to correspond to - Makefile. -kes Check for client and store NULL pointers in status command. This - fixes bug #845. -kes Fix non-ssl build so that it works (add JCR *jcr to crypto structures). -kes Fix sign extended editing of %p. -kes Clean out a little old #ifdefing in cats/mysql.c -10May07 -kes If time diff between DIR and FD is more than 600 seconds convert - INFO message to WARNING. -kes Implement heap size display in status for all daemons. -kes Attempt to fix MySQL db open memory loss (not successfull). -kes Don't set SIGKILL and SIGSTOP neither can be trapped. -kes Eliminate memory loss in MySQL (possibly other SQLs) during - Query. This looks like a MySQL but but by doing extra releases, - the memory goes away. This should fix bug #847. -09May07 -kes When backup fails, cancel SD before waiting for sd termination. -kes If SD is waiting for FD to connect during cancel, wake up the - thread. -kes Fix fsf code so that errno is correctly reported. -kes Apply migration patch (with changes) from Sergey Svishchev -08May07 -kes Make lack of Pool directive in Job an ERROR_TERM rather than FATAL - so that Bacula doesn't later stumble into a seg fault. -kes Use the term Restore Client in the restore Job report. -kes Merge patch from Sergey Svishchev that preserves - the original job's FileSetId. -kes Merge patch from Sergey Svishchev that implements - spooling in migration jobs. Not yet tested. -kes Merge patch from Jorj Bauer 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 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 new 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 - 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 -- scheduler problem. -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 diff --git a/docs/techlogs/technotes-3.0.2 b/docs/techlogs/technotes-3.0.2 index c6a992c0..e25e9a47 100644 --- a/docs/techlogs/technotes-3.0.2 +++ b/docs/techlogs/technotes-3.0.2 @@ -2,6 +2,78 @@ General: +15Jul09 +kes Make CONF::init header and .c file agree about types. + Reported by "Eli Shemer" +kes Fix Win64 build +kes Add more example SD Device configurations. +ebl Force the client_encoding to SQL_ASCII when database is already + using this mode. +ebl Fix #1335 about postgresql error message during copy session +ebl Cleanup old job records when starting the director + (Created/Running -> Failed) +14Jul09 +kes Tweak debug print in accurate +kes Apply patch in bug #1315 by McMichaeli that fixes scripts/logwatch +kes Add more output when spooling and no space left +ebl Fix postgresql driver bug that displayed rows from time to time. +kes More cleanup of bootstrap +ebl Implement the project 'restore' menu: enter a JobId, automatically + select dependents +ebl Should fix #1323 about verify accurate jobs and deleted files. +13Jul09 +kes Send bootstrap directly from DIR to SD +kes Create build scripts for Win64 somewhat equilavent to the Win32 ones. +10Jul09 +ebl Print correct JobId in bls, should fix #1331 +kes Apply python detect patch from Bastian Friedrich +09Jul09 +kes Add --with-hostname to ./configure +mvw Changed ACL_OTHER into ACL_OTHER_OBJ as IRIX doesn't seem to have + ACL_OTHER. Fixes bug #1333 +04Jul09 +mvw Change checking for acl and xattr support from first file to + job level. +mvw Call acl and xattr function only when requested for fileset + and filed has support for acl or xattr +mvw Fix typo introduces by fix for bug #1305 +03Jul09 +ebl Should fix the first part #1323 about the restore option + 'List Jobs where a given File is saved' wich display deleted files +02Jul09 +kes Another fix for bug #1311 to get the correct last_full_time +ebl Make estimate command accurate compatible. Should fix #1318 +ebl Add estimate accurate=yes/no +ebl Change the code to check jcr->accurate and not jcr->job->accurate +01Jul09 +kes Fix bug #1317 Allow duplicate jobs = no does not work +kes Eliminate double job report when do_xxx_init() returns failure +kes Add debug code to MaxDiffInterval +29Jun09 +kes Change bacula-dir.conf default job name from Client1 to BackupClient1. +28Jun09 +mvw Fix missing case for NetBSD xattr restores. +27Jun09 +kes Fix Win32 build -- turn off lockmgr and remove lockmgr defs +25Jun09 +kes Modify xattr.c and acl.c not to fail the job on errors. This should + fix bug #1305. +23Jun09 +mvw Fix 2 rather big bugs in the xattr and acl code and fix a small + memory leak on a particular code path for Linux xattr/acl handling. +ebl Update FileSetId when initializing job. +ebl Fix compilation problem with message.c +ebl Add '*' when volume is online when displaying volume list in restore. Should + complete project 31. +21Jun09 +kes Re-fix bug #1311 if MaxDiffInterval exceeded ensure job upgraded +18Jun09 +kes Add all Job Types to job_type_to_str() for bat. +kes Fix bug #1311 if MaxDiffInterval exceeded ensure job upgraded +17Jun09 +kes Fix bug #1305 make errors obtaining acl during backup non-fatal +kes Fix bug #1309 inappropriate error message during btape fill command +kes Fix bug #1307 AllowHigherDuplicates=no prevents automatic job escalation 12Jun09 kes Remove non-portable code referencing pthread_t fixes bug #1308. kes Create patch that may fix bug #1298 and bug #1304, which causes @@ -88,7 +160,7 @@ ebl Fix bug #1274 where a migration job can be canceled like the mvw Added fix for bug #1275 where acl or xattr data is saved for virtual filenames generated by filed plugins. 26Apr09 -ebl Remove "Reposition" message when restoring +ebl Remove 'Reposition' message when restoring kes Fix platform scripts not to clean configured files during 'make clean' use 'make distclean' to clean everything. Fixes bug #1272.