From 2c8e0154a2ba6b3fb35e84a11d5e437cc75e0529 Mon Sep 17 00:00:00 2001 From: Kern Sibbald Date: Sat, 14 Aug 2004 12:13:39 +0000 Subject: [PATCH] Doc updates git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@1529 91ce42f0-d328-0410-95d8-f526ca767f89 --- bacula/ChangeLog | 308 ++++++++++++++++++++ bacula/ReleaseNotes | 640 +++++++++++++++-------------------------- bacula/src/count-lines | 4 +- 3 files changed, 546 insertions(+), 406 deletions(-) diff --git a/bacula/ChangeLog b/bacula/ChangeLog index 5719de962e..43ac387b34 100644 --- a/bacula/ChangeLog +++ b/bacula/ChangeLog @@ -1,4 +1,312 @@ +Changes to 1.35.1: +14Aug04 +- Print error message if Alert Command fails in bpipe_open(). +- Doc Alert command. +- Eliminate unnecessary class in findlib/attribs.c +- Add necessary empty files to new tray-monitor directory. +13Aug04 +- Implement Class with template in findlib/attribs.c to do casting + of uint64_t into stat packet types to avoid compiler warnings. + Thanks to Meno for this idea. +- Make some modifications to satisfy VC++. +- Apply Martin Simmons' second patch to compat.cpp to fix the line + I previously missed. +- Apply Meno's fix to bnet that corrects use of ipaddr after free_addresses, + back out my kludges, and it works. +- Modified configure.in to by default add -Wall. +12Aug04 +- Found some problems with printing IP addresses -- will notify Meno. +- Added printing Pool to Job report. +- Fixed several places where dlists were not being released + (term_job_server, ...) +- Started implementing New() for dlists. Spent a lot of time, + but could not get it to work. +- Fixed a mutex deadlock between the job queue scheduler and the + watchdog. +- Made add_address() static. +- Added bsnprintf to address_conf.c +10Aug04 +- Apply Marin Simmons patch to inet_aton() in compat. +06Aug04 +- Build on Win32 -- required a few changes because of new IP code. +- Implement program reader code in Dir and FD -- not tested, and + a few corrections for writer code are needed in FD. +- Rework SQL for pruning. Add Admin pruning. Prune failed + jobs in Verify and Restore. +- Don't put commas in listing produced in restore so that users + can cut and past JobIds without having commas in the way. +- Change size_t to socklen_t in filed.c -- reindent a bit. +- Remove addr_list->size from buf size definition in bnet.c +- Create a Developer's document. +- Add prompt for Update volume from pool and update all + Volumes from pool. +05Aug04 +- Implement user friendly time duration input editing. +- Add buf len argument to edit_utime(). +- Added eliminate orphaned Client records to dbcheck. +04Aug04 +- Implement Alert Command in SD Device conf. +- Fix updating a Volume from the pool record -- it never changed + anything. +- Implement updating all Volumes from pool record. +- Add patch by Denis Shaposhnikov that fixes excludes of directories + in new style FileSets. +03Aug04 +- Merge Meno's IPv6-1 code. +- Update License to terminate rights of anyone suing a GPL licensor. +- Add Pruning doc sent by Bryce Denney +- Correct inconsistencies in restore command doc pointed out by user. +- Don't edit commas in SQL intergers if they are not stricly integer. +30Jul04 +- Update all pools in all DBs when starting the Director. +28Jul04 +- Implement final cut of berrno and update Win32 code. +- Update copyright to include a termination clause. Add copyright to + binaries. +- Implement .backups client=xxx for Nicolas. +27Jul04 +- Make first cut at implementing berrno class to handle Unix, Win32 + and bpipe errors. Bpipe still needs to be implemented. + This fixes (not yet tested) the Win32 errno problems in the compat lib. +- Fix btape compile problem reported by Martin Simmons -- thanks. +- Add ./configure detection of sys/tape.h +26Jul04 +- Apply two fixes to recent changes to dev.c submitted by + Martin Simmons. +24Jul04 +- Add checks in btape for correct size of off_t, and correct editing + of 32 and 64 bit values. +- Move supported OS/hardware into a chapter by itself. +- Fix bscan, which did not handle walking dcr list. +- Remove old attach_jcr_to_device() code. +- Fix config from Andy Wettstein's patch to use bitypes.h and detect + uint32_t, ... definitions. +- Fix a few compiler warnings because of casting pointers to int and + vise versa. +- Do some minor cosmetics to query.sql. nothing changed. +- Don't call stop_thread_timer() in backup.c if timer not started. +- Fix bug with out of order JobIds on restore. +- Make watchdog examine queues once every 10 seconds instead of once + a second. +22Jul04 +- Add more bools to dev.c +- Fix walking attached DCRs in bscan.c +21Jul04 +- Doc updates +- Start work on rescue files. Integrated RAID changes. +- Print a message when query.sql moved to query.sql.old during install. +- Move setting of FreeBSD chflags() to after utime() to avoid error + messages is immutable bit is set. +18Jul04 +- Turn off heartbeat in FD when -s is given so that we can + debug without a flood of signals. +- Close and reopen the device during an append test in + btape. This better tests appending as if Bacula stops/restarts. +- Remove old attach/detach_jcr_to_device() code +- Add new attached_dcrs code. +- Remove unnecessary subroutine for bsnprintf. +- Replace sprintf() by home-grown code in edit_uint64 ... +- Begin implementation of dev->attached_dcrs. +17Jul04 +- Remove scripts/fd.in from configure.in +- Add printing of JobId when a Job is started from the console. +16Jul04 +- Remove fd/fd.in from scripts directory. +- Fix a number of bugs in dbcheck concerning the -c option + (i.e. with a config file). +- Made RH start scripts use -u and -g options. +- Many more DCR changes. +- Add job message indicating that the job has been rescheduled + and when. +- Fix job end time so that it is always updated. Previously it + was not updated when a job was rescheduled. +- Correct SQL for restoring job by path/name. It could sometimes + pickup the wrong JobId -- submitted by a user. +- Add a number of "%s" in editing database errors -- security issue. +- Ensure that the NumVols is incremented and decremented in the + pool record when Volumes are created or deleted. +- Cleanup error handling when labeling a tape. If vol was read-only, + the device would still be marked as having found a label. +09Jul04 +- Put ftCreationTime into st_ctime of stat packet. Hopefully + this will fix the problem of noticing files have been moved + into the save path after a Full save. +- Fix bug in "status dir" where not all entries are listed. +- Cleanup some improper result printing in configure. +- Optimize a couple of insertions in binary_insert of dlists. + +Release 1.35.0 08 July 2004: +08Jul04 +- Apply Christopher Hull's const patch for PostgreSQL +- Add code to block.c to detect if block header is destroyed. +- Add debug code for memset checking for zeroing 1900-3000 bytes + which is what happened to the block headers. +- If block header is destroyed, read the next block. Probably + should return with new status similar to the SHORT block + return. +- Add more debug info to bls for bad blocks. +- More implementation of DCRs. +07Jul04 +- Eliminate argument passing in SD by using dcr. +- More int->bool conversions. +- Add file:block to a number of read/write error messages. +04Jul04 +- More int -> bool conversions. +- Modify the SD piece by piece to use DCRs everywhere. +- Cleanup some printout for query command. +- Fix typo in cats/mysql.c +- Work on cleaning up tape driver a bit (use bools, better calling + sequences). +- Attempt to fix multi-Volume disk backup. Needs to be tested. +01Jul04 +- Add Regular expressions to FileSet options. +- Correct configure.in to use ${MAKE} for doing the dependencies. +- Make MySQL and PostgreSQL try for 30 seconds to connect before + giving up. +- Correct Gnome 1.4 Makefile to build without cats library. +- Correct a crash reported (with patch) by Jonathan Soong + when attempting to backup an ACL on a symlinked file. +27Jun04 +- Fixed an off by one bug in the new resources pointer code. + res_head array was one too small. +- Added Errors to last_job list. This allows detecting jobs + that terminated in a warning. +- Implement setting the Win32 icon to yellow instead of red + when the job terminated OK but with warnings. +- Fix the Win32 makefile and VC project file. The links were + not including the Win32 dlls. +- Delete some old Win32 code that was turned off. +- Eliminate a few more Win32 compiler warnings. +- Reduce the output produced by NIS (Win32 install builder). +- Simplify some of the #ifdefing in compat.h +26Jun04 +- Rewrite spooling error handling when I/O error occurs. It is + a bit tricky, requiring to truncate the file so that a despooling + will work correctly. Needs to be tested. +- Make better subroutines for setting up for a new job. +- Start putting all DB ids on #defines (going to 64 bits). +- Fix gnome-console Makefile.in to work again. +- All "level=Incremental/Decremental" to the estimate command. This + required some re-arrangement of subroutines at a fairly low level. +25Jun04 +- Apply Piotr Jaworski's patch (patch-r-status.diff) to update the + catalog status when a backup job starts running. +24Jun04 +- Add (char*) cast to readline call in console.c for old readlines. +- Copy Makefile.in from gnome2-console to gnome-console (to eliminate + need for cats library). +- Modify spooling code to handle write error (e.g. spooling disk full) + more gracefully. Previously despooling would fail. +22Jun04 +- Reduce casting in smartall.c a bit and add counters for + bytes, max_bytes, buffers and max_buffers. +- Fixed reload algorithm to stack both job end callback and the + table id. +- Fixed the orphaned buffer after reload (job_end_push had to be + destroyed. +- Destroy cond var (jcr->term_wait) only if initialized. +21Jun04 +- Sort the Scheduled Jobs list by start-time, priority. +- Implement resources on a pointer. +- Fix Gnome console crash on up/down arrow with no history. +19Jun04 +- Finish first cut of SIGHUP code. To make really work need res + on a single pointer rather than in fixed memory. +- Fix a number of places in query.sql where multiple JobIds are + printed (due to JobMedia records). +- Add new query: List jobs on Volume given Volume name. +- Correct socket close on Win32 in bnet.c (in addition to compat.cpp). + Caused fd leak in Win32 for each connection. +- Remove vol labeled test in askdir update_volume_info so that non-labeled + Volume in catalog can be marked in error. +- Close socket in SD when connection rejected. Caused fd leaks. +- Initialize job_start_wait cond variable after every new_jcr() otherwise + NetBSD gets error in library when trying to delete it without being inited. +- Fix typo (9 instead of 0) return status in write_new_volume_label. +- Fix mount.c to call routine that correctly marks a volume in error. +- Move code to rewrite volume label to subroutine -- a bit cleaner. +18Jun04 +- Finish implementation and testing of new restore tree code. +- Implement feedback while tree is loading. +- Eliminate printing INFO message in UpdateDB (cats) -- it generates + "false" error messages. +- Eliminate some GTK error messages when running the Gnome2 console. +16Jun04 +- Begin restructuring tree.c for inclusion of the binary_insert() + routine. +- Apply Peter Eriksson's lib file order changes in linking for IRIX. +- Abort configure if Internal is selected as the database. +- Add testimonials to the Web page +- Add the bugs list to the Web page "lists". +- Clarify the English in SuSE and Slackware when SD not running. +15Jun04 +- Applied another extern "C" patch from Peter Eriksson. +- Fixed a bunch of VC warning messages. +- Applied the patches sent by Andreas Jellinghaus: build Gnome and + wx-console in client-only build if configured; add ./configure option + to permit setting of sbin modes -- default is 0745 as before; remove + cats library from Gnome console build; remove old version from Gnome + About box. Thanks Andreas. +14Jun04 +- Applied Peter Eriksson's const changes to the source code. Thanks Peter. +- Implemented a binary_insert() method for dlists -- intended to be used + in the restore tree routines. +- Turned on my bsscanf() code, which replaces sscanf() by my routines, which + are a subset of sscanf() used by Bacula, but which have known 32/64 bit + behavior rather than vendor dependent !@#$%*. + +2004-07-30 Version 1.34.6 28Jul04 Release +28Jul04 +- Fix a restore bug where the backups could be + applied out of proper order possibly restoring an old version + of a modified file. +- Fix for restore selection of a file by name, where it was + possible to select a file from the wrong Client. +- Fix segmentation fault during backup of a symbolic link + with ACLs turned on. +- Fix a minor compile error in wx-console. +- Fix a bug in despooling when the spooling disk partition becomes + totally filed or gets I/O errors. +- Fix a memory leak in PostgreSQL, and make Bacula retry 5 times if + connecting to the DB fails. +- Retry 5 times if connect to MySQL failes. +- Fix linking the gnome-console + +2004-06-22 Version 1.34.5 21Jun04 Release +21Jun04 +- Fixed Gnome crash on up/down arrow with no history. +- Fixed btape "fill" crash with multiple tape option. +19Jun04 +- Fix a number of places in query.sql where multiple JobIds are + printed (due to JobMedia records). +- Add new query: List jobs on Volume given Volume name. +- Correct socket close on Win32 in bnet.c (in addition to compat.cpp). + Caused fd leak in Win32 for each connection. +- Remove vol labeled test in askdir update_volume_info so that non-labeled + Volume in catalog can be marked in error. +- Close socket in SD when connection rejected. Caused fd leaks. +- Initialize job_start_wait cond variable after every new_jcr() otherwise + NetBSD gets error in library when trying to delete it without being inited. +- Fix typo (9 instead of 0) return status in write_new_volume_label. +- Fix mount.c to call routine that correctly marks a volume in error. +18Jun04 +- Eliminate printing INFO message in UpdateDB (cats) -- it generates + "false" error messages. +- Eliminate some GTK error messages when running the Gnome2 console. +16Jun04 +- Apply Peter Eriksson's lib file order changes in linking for IRIX. +- Abort configure if Internal is selected as the database. +- Add testimonials to the Web page +- Add the bugs list to the Web page "lists". +- Clarify the English in SuSE and Slackware when SD not running. +15Jun04 +- Applied the patches sent by Andreas Jellinghaus: build Gnome and + wx-console in client-only build if configured; add ./configure option + to permit setting of sbin modes -- default is 0745 as before; remove + cats library from Gnome console build; remove old version from Gnome + About box. Thanks Andreas. + 2004-06-09 Version 1.34.3 09Jun04 Release 12Jun04 - Enhance regression scripts. diff --git a/bacula/ReleaseNotes b/bacula/ReleaseNotes index c5a9b9990b..792b4d73d7 100644 --- a/bacula/ReleaseNotes +++ b/bacula/ReleaseNotes @@ -1,430 +1,262 @@ - Release Notes for Bacula 1.34.5 + Release Notes for Bacula 1.35.1 - Bacula code: Total files = 364 Total lines = 103,481 (*.h *.c *.in) + Bacula code: Total files = 384 Total lines = 110,682 (*.h *.c *.in) -Changes for 1.34.5: +Changes for 1.35.1 Major Changes: -- Correct socket close on Win32 in bnet.c (in addition to compat.cpp). - Caused fd leak in Win32 for each connection. -- Fix a number of places in query.sql where multiple JobIds are - printed (due to JobMedia records). -- Abort configure if Internal is selected as the database. -- Close socket in SD when connection rejected. Caused fd leaks. +- Added Tape Alert feature (see Alert Command). +- New IPv6 code (untested) +- New way of specifying Addresses and Ports -- permits having + server listen on multiple ports. +- Regular expressions in Options directive. +- Reader/writer programs in Options (not yet fully implemented, + please do not use). +- Fixed specification of bind address on Win32 (thanks to + Martin Simmons). +- Update all Volumes from Pool record. +- Update License to terminate rights of anyone suing a GPL licensor. +- Improved error messages for Win32 and when running external + programs (e.g. RunBeforeJob). +- Implement reload of conf file in Directory on SIGHUP. +- Building restore tree is much faster on large filesets + due to binary insert. + +New Directives: +- Alert Command in Device resource of Storage Daemon. +- New IP address and port directives. +- reader = xxx, writer = yyy in Options within FileSet of + Director's conf file. +- regex = xxx in Options within FileSet of Director's + conf file. +- New command options: update AllFromPool updates all + Volumes with Pool defaults. +- .backups client=xxx (for GUI programs). -Items to note!!!! -- If you are upgrading from 1.32, please be sure to see the database - upgrade procedure under the 1.34.0 notes. +Items to note!!! +- All daemons should be compatible with 1.34 with the exception + of the new FileSet features such as regular expressions. +- Regular expressions are not implemented in the Win32 FD. Other Items: -- Fixed Gnome crash on up/down arrow with no history. -- Fixed btape "fill" crash with multiple tape option. +- Print error message if Alert Command fails in bpipe_open(). +- Doc Alert command. +- Eliminate unnecessary class in findlib/attribs.c +- Add necessary empty files to new tray-monitor directory. +- Implement Class with template in findlib/attribs.c to do casting + of uint64_t into stat packet types to avoid compiler warnings. + Thanks to Meno for this idea. +- Make some modifications to satisfy VC++. +- Apply Martin Simmons' second patch to compat.cpp to fix the line + I previously missed. +- Apply Meno's fix to bnet that corrects use of ipaddr after free_addresses, + back out my kludges, and it works. +- Modified configure.in to by default add -Wall. +- Found some problems with printing IP addresses -- will notify Meno. +- Added printing Pool to Job report. +- Fixed several places where dlists were not being released + (term_job_server, ...) +- Started implementing New() for dlists. Spent a lot of time, + but could not get it to work. +- Fixed a mutex deadlock between the job queue scheduler and the + watchdog. +- Made add_address() static. +- Added bsnprintf to address_conf.c +- Apply Marin Simmons patch to inet_aton() in compat. +- Build on Win32 -- required a few changes because of new IP code. +- Implement program reader code in Dir and FD -- not tested, and + a few corrections for writer code are needed in FD. +- Rework SQL for pruning. Add Admin pruning. Prune failed + jobs in Verify and Restore. +- Don't put commas in listing produced in restore so that users + can cut and past JobIds without having commas in the way. +- Change size_t to socklen_t in filed.c -- reindent a bit. +- Remove addr_list->size from buf size definition in bnet.c +- Create a Developer's document. +- Add prompt for Update volume from pool and update all + Volumes from pool. +- Implement user friendly time duration input editing. +- Add buf len argument to edit_utime(). +- Added eliminate orphaned Client records to dbcheck. +- Implement Alert Command in SD Device conf. +- Fix updating a Volume from the pool record -- it never changed + anything. +- Implement updating all Volumes from pool record. +- Add patch by Denis Shaposhnikov that fixes excludes of directories + in new style FileSets. +- Merge Meno's IPv6-1 code. +- Update License to terminate rights of anyone suing a GPL licensor. +- Add Pruning doc sent by Bryce Denney +- Correct inconsistencies in restore command doc pointed out by user. +- Don't edit commas in SQL intergers if they are not stricly integer. +- Update all pools in all DBs when starting the Director. +- Implement final cut of berrno and update Win32 code. +- Update copyright to include a termination clause. Add copyright to + binaries. +- Implement .backups client=xxx for Nicolas. +- Make first cut at implementing berrno class to handle Unix, Win32 + and bpipe errors. Bpipe still needs to be implemented. + This fixes (not yet tested) the Win32 errno problems in the compat lib. +- Fix btape compile problem reported by Martin Simmons -- thanks. +- Add ./configure detection of sys/tape.h +- Apply two fixes to recent changes to dev.c submitted by + Martin Simmons. +- Add checks in btape for correct size of off_t, and correct editing + of 32 and 64 bit values. +- Move supported OS/hardware into a chapter by itself. +- Fix bscan, which did not handle walking dcr list. +- Remove old attach_jcr_to_device() code. +- Fix config from Andy Wettstein's patch to use bitypes.h and detect + uint32_t, ... definitions. +- Fix a few compiler warnings because of casting pointers to int and + vise versa. +- Do some minor cosmetics to query.sql. nothing changed. +- Don't call stop_thread_timer() in backup.c if timer not started. +- Fix bug with out of order JobIds on restore. +- Make watchdog examine queues once every 10 seconds instead of once + a second. +- Add more bools to dev.c +- Fix walking attached DCRs in bscan.c +- Doc updates +- Start work on rescue files. Integrated RAID changes. +- Print a message when query.sql moved to query.sql.old during install. +- Move setting of FreeBSD chflags() to after utime() to avoid error + messages is immutable bit is set. +- Turn off heartbeat in FD when -s is given so that we can + debug without a flood of signals. +- Close and reopen the device during an append test in + btape. This better tests appending as if Bacula stops/restarts. +- Remove old attach/detach_jcr_to_device() code +- Add new attached_dcrs code. +- Remove unnecessary subroutine for bsnprintf. +- Replace sprintf() by home-grown code in edit_uint64 ... +- Begin implementation of dev->attached_dcrs. +- Remove scripts/fd.in from configure.in +- Add printing of JobId when a Job is started from the console. +- Remove fd/fd.in from scripts directory. +- Fix a number of bugs in dbcheck concerning the -c option + (i.e. with a config file). +- Made RH start scripts use -u and -g options. +- Many more DCR changes. +- Add job message indicating that the job has been rescheduled + and when. +- Fix job end time so that it is always updated. Previously it + was not updated when a job was rescheduled. +- Correct SQL for restoring job by path/name. It could sometimes + pickup the wrong JobId -- submitted by a user. +- Add a number of "%s" in editing database errors -- security issue. +- Ensure that the NumVols is incremented and decremented in the + pool record when Volumes are created or deleted. +- Cleanup error handling when labeling a tape. If vol was read-only, + the device would still be marked as having found a label. +- Put ftCreationTime into st_ctime of stat packet. Hopefully + this will fix the problem of noticing files have been moved + into the save path after a Full save. +- Fix bug in "status dir" where not all entries are listed. +- Cleanup some improper result printing in configure. +- Optimize a couple of insertions in binary_insert of dlists. + +Release 1.35.0 08 July 2004: +- Apply Christopher Hull's const patch for PostgreSQL +- Add code to block.c to detect if block header is destroyed. +- Add debug code for memset checking for zeroing 1900-3000 bytes + which is what happened to the block headers. +- If block header is destroyed, read the next block. Probably + should return with new status similar to the SHORT block + return. +- Add more debug info to bls for bad blocks. +- More implementation of DCRs. +- Eliminate argument passing in SD by using dcr. +- More int->bool conversions. +- Add file:block to a number of read/write error messages. +- More int -> bool conversions. +- Modify the SD piece by piece to use DCRs everywhere. +- Cleanup some printout for query command. +- Fix typo in cats/mysql.c +- Work on cleaning up tape driver a bit (use bools, better calling + sequences). +- Attempt to fix multi-Volume disk backup. Needs to be tested. +- Add Regular expressions to FileSet options. +- Correct configure.in to use ${MAKE} for doing the dependencies. +- Make MySQL and PostgreSQL try for 30 seconds to connect before + giving up. +- Correct Gnome 1.4 Makefile to build without cats library. +- Correct a crash reported (with patch) by Jonathan Soong + when attempting to backup an ACL on a symlinked file. +- Fixed an off by one bug in the new resources pointer code. + res_head array was one too small. +- Added Errors to last_job list. This allows detecting jobs + that terminated in a warning. +- Implement setting the Win32 icon to yellow instead of red + when the job terminated OK but with warnings. +- Fix the Win32 makefile and VC project file. The links were + not including the Win32 dlls. +- Delete some old Win32 code that was turned off. +- Eliminate a few more Win32 compiler warnings. +- Reduce the output produced by NIS (Win32 install builder). +- Simplify some of the #ifdefing in compat.h +- Rewrite spooling error handling when I/O error occurs. It is + a bit tricky, requiring to truncate the file so that a despooling + will work correctly. Needs to be tested. +- Make better subroutines for setting up for a new job. +- Start putting all DB ids on #defines (going to 64 bits). +- Fix gnome-console Makefile.in to work again. +- All "level=Incremental/Decremental" to the estimate command. This + required some re-arrangement of subroutines at a fairly low level. +- Apply Piotr Jaworski's patch (patch-r-status.diff) to update the + catalog status when a backup job starts running. +- Add (char*) cast to readline call in console.c for old readlines. +- Copy Makefile.in from gnome2-console to gnome-console (to eliminate + need for cats library). +- Modify spooling code to handle write error (e.g. spooling disk full) + more gracefully. Previously despooling would fail. +- Reduce casting in smartall.c a bit and add counters for + bytes, max_bytes, buffers and max_buffers. +- Fixed reload algorithm to stack both job end callback and the + table id. +- Fixed the orphaned buffer after reload (job_end_push had to be + destroyed. +- Destroy cond var (jcr->term_wait) only if initialized. +- Sort the Scheduled Jobs list by start-time, priority. +- Implement resources on a pointer. +- Fix Gnome console crash on up/down arrow with no history. +- Finish first cut of SIGHUP code. To make really work need res + on a single pointer rather than in fixed memory. +- Fix a number of places in query.sql where multiple JobIds are + printed (due to JobMedia records). - Add new query: List jobs on Volume given Volume name. +- Correct socket close on Win32 in bnet.c (in addition to compat.cpp). + Caused fd leak in Win32 for each connection. - Remove vol labeled test in askdir update_volume_info so that non-labeled Volume in catalog can be marked in error. +- Close socket in SD when connection rejected. Caused fd leaks. - Initialize job_start_wait cond variable after every new_jcr() otherwise NetBSD gets error in library when trying to delete it without being inited. - Fix typo (9 instead of 0) return status in write_new_volume_label. - Fix mount.c to call routine that correctly marks a volume in error. +- Move code to rewrite volume label to subroutine -- a bit cleaner. +- Finish implementation and testing of new restore tree code. +- Implement feedback while tree is loading. - Eliminate printing INFO message in UpdateDB (cats) -- it generates "false" error messages. - Eliminate some GTK error messages when running the Gnome2 console. +- Begin restructuring tree.c for inclusion of the binary_insert() + routine. - Apply Peter Eriksson's lib file order changes in linking for IRIX. +- Abort configure if Internal is selected as the database. - Add testimonials to the Web page - Add the bugs list to the Web page "lists". - Clarify the English in SuSE and Slackware when SD not running. +- Applied another extern "C" patch from Peter Eriksson. +- Fixed a bunch of VC warning messages. - Applied the patches sent by Andreas Jellinghaus: build Gnome and wx-console in client-only build if configured; add ./configure option to permit setting of sbin modes -- default is 0745 as before; remove cats library from Gnome console build; remove old version from Gnome About box. Thanks Andreas. -- Correct a typo in the FreeBSD SD autostart install. -- New bacula.spec.in from Scott. -- Use /usr/lib/sendmail instead of mail if no mail program is configured. - Submitted by Peter Eriksson. This *should* be more portable. - - -Changes for 1.34.4: -Major Changes/Features: -- Implement | and < in FD for new FileSet files. -- Implement simplistic attribute spooling statistics in status. -- Make storage=xxx on restore override the restore default. -- Clear InChanger flag during "update barcodes" if no VolName present, - i.e. no Volume in Changer. -- An update pulled in Christopher Hull's fixes to the client program - execution on Win32 to search the path and use COMSPEC. New rules - apply! -- In SD mount.c, if get I/O error or read label error on non-removable - Volume, mark the volume in error and retry. -- Apply Tim Oberfoell's ACL patch. - -Items to note!!!! -- If you are upgrading from 1.32, please be sure to see the database - upgrade procedure under the 1.34.0 notes. -- If your system has a libacl in the standard location, acl's will - be enabled, and you can turn them on with "aclsupport=yes" as an - Include or Option option. - -Other Items: -- Enhance regression scripts. -- Implement bsscanf() because sscanf on FreeBSD amd64 stores - in 64 bit words for %ld. Turned on for the moment only for - FreeBSD amd64. -- Fix all conversions of ptr to int to use (long unsigned) this - works on i386 and amd64. -- Add mtimeonly and keepatime to new Options list -- omitted before. -- Add a bit more authentication debug code. -- Start variable name/overload cleanup in SD -- Fix sscanf() in askdir.c scanning into bool to use local int. -- Make max_spool_size int to allow proper arithmetic. -- Remove trailing junk on sscanf() of "Hello Start Job" in SD. -- Make ask_sysop_to_mount_volume() always ask sysop. -- In SD mount.c, if get I/O error or read label error on non-removable - Volume, mark the volume in error and retry. -- In SD mount.c, if non-removable volume, never ask sysop to mount. We - ask sysop if there are no appendable Volumes though. -- The above 3 items fix the looping error Bacula would get if the - Volume was in the catalog but didn't exist -- or was zero bytes - long. -- Fix an uninitialized stack variable in append.c that caused data - corruption on amd64 machines and *could* cause the same on other - machines. -- Fix a seg fault in automatic tape labeling. -- Eliminate a PoolId=nn when zeroing the InChanger flag for a Volume. -- Add a bit more debug info to bls.c -- Fix UpdateDB to complain if mum_rows < 1 rather than != 1. - - - - -Changes for 1.34.3: -Major Features: -- Implemented and documented the first cut of the new FileSet directives. - The first cut permits using wild-card matches for including files in - addition to excluding files. -- The Windows rescue procedure is confirmed for WinXP/2K (probably not NT). -- Modification of the PostgreSQL database creation scripts to improve - performance by removing foreign keys. -- Use trasactions on PostgreSQL to improve performance. -- Restore jobs will now not start until they can get exclusive use - of the Storage daemon Device previously they erred. -- Permit execution of more kinds of Win32 files with ClientRunxxxJob. - If an absolute path is specified, the filename must contain the correct - extention. - -Items to note!!!! -- If you are upgrading from 1.32, please be sure to see the database - upgrade procedure under the 1.34.0 notes. -- Although the daemons are compatible for all 1.34.2 features, - the new FileSet directives are not compatible with 1.34.2 daemons. -- Fixed several query.sql bugs. -- The behavior of the hourly, daily, weekly, and monthly keywords in - the Run directive have been changed to be more logical -- they only - affect the one item mentioned rather than all items. - -Other items: -- The wx-console has had significant improvements. -- Upgraded to latest autoconf files. -- Added BaculaRoadmap_v1.1.pdf in doc directory -- Fixed a crash in the btape "fill" command. -- Added a new alpha directory to platforms -- first cut. -- The mtx-changer script was broken in 1.34.2 -- it is now fixed. -- Pass all arguments on database creation scripts. -- I finally found and fixed the bug that in some cases required a double - mount to get Bacula to look at the tape again. -- Thanks to user input corrected (I think) the negative values that - sometimes occurred in the spooling statistics. -- Fixed several bsmpt bugs thanks to user input. -- Added user supplied code to read the Directors's conf file in dbcheck so - that remote databases could be contacted as well as the working directory - and other catalog parameters obtained. -- Fixed changing a Volume from one Pool to another in "update volumes". - - - - - - - - - -Changes for 1.34.2: -Major Features: -- wx-console can now be built both under GTK and Win32. It is - now part of the Win32 binary release. It has a very nice tree - oriented restore. Thanks to Nicolas Boichat for this program. -- bconsole is now included in the Win32 binary release. - -Items to note!!! -- bscan restored StartBlocks one block off resulting in loss of - data if any bscanned volumes were restored. Thanks to Gregory - for reporting this. It is fixed in this release. -- Due to an oversight, "Maximum Job Spool Size" was is not implemented. - It will be in the next release. -- To build wx-console on Linux. Download wxWidgets 2.4.2 from wxwidgets.org, - build and install it on your system, then add --enable-wx-console on - your Bacula ./configure and it will be built and installed. -- For both the Win32 and Linux GTK versions of wx-console, you must - create a wx-console.conf in the current directory. The contents are - identical to a bconsole.conf file. - -Other items: -- Make SD utility programs accept device name as well as archive device - on command line. -- Update docs -- Remove old debug code from Win32 FD. -- A new version of depkgs-win32 was released containing the Win32 - wxWidgets source code. -- Disable SIGHUP code in Director which is not yet complete. - - -Release 1.34.1: -- Autochanger users, please note you must add %d to the end of the - changer command line in your Device resource in your bacula-sd.conf - file. -- There is a new wx-console program that does restores with a - tree allowing you to visually select what files are to be restored. - It is in a preliminary stage of development, but can be easily - be built under Linux with GTK, and with just a bit more difficulty - under Win32 with MinGW. -- Fixed a major race condition in the job scheduler when multiple - simultaneous jobs is enabled. This occurred only when on job had - blocked another because of resource usage. -- Fixed crash in SD during restore. -- Changed the backup report to indicate "Backup OK -- with warnings - if any warning messages were generated. -- Change output of restore report to indicate: - "Restore OK -- warning file count mismatch" -- Make backup report say "Backup OK with warnings" if either FD or SD - report any non-fatal errors. -- Modify bscan to print some elementary statistics (#Jobs, #Files, ...) - added to catalog. -- Added --enable-wx-console and updated Makefile.in -- Fix mtx-changer so that the calling sequence is compatible - with the previous version (the new one required arguments that - were not necessarily used). -- Document how to use stunnel with Bacula. -- Fix crash in query command. -- Remove schedule from the default restore job. -- Fix data spooler to use min/max tape blocking factors. -- Automatically turn of conio if library not found instead of bombing. -- Cleaned up a lot of copyright dates. -- Try to keep spool statistics from going negative. -- Added new Pools chapter. Doc about using two disks. -- Attempt to keep the spool file statistics size from going - negative. -- Fix the Director's Scheduled Jobs: list to have a === - termination. -- Fixed ./configure to disable readline rather than stop if - readline.h is not found -- Fixed a typo in the SQLite database update script as reported - by Robert J. Clark - thanks. -- Removed src/win32/pthreads and src/win32/zlib from the source - tree. -- Created a new depkgs-win32 that has the pthreads and zlib source - code. -- Removed the JobDefs from the default Restore job as it has a - schedule. Thanks to Matt Howard for this. - - - -Release 1.34.0 -Major Features: -- Data spooling which reduces tape shoe-shine during Inc backups, - and permits multiple simultaneous backups without interleaved blocks. -- Native Win32 client -- much faster and restores permissions correctly - (thanks to Christopher Hull) -- New Windows style installer for the Win32 Client. -- PostgreSQL database driver (thanks to Dan Langille). -- Polling of devices eliminating need to unmount and mount from - console. -- Improved Autochange support of Slots (update slots scan). -- Autochanger support for multiple drives (I think). -- New conio code to implement Console command line editing and history. -- JobDefs resource permits smaller .conf files for Director -- Access console lists for the Console -- Pool level overrides. -- Daemon "status" is recovered across daemon executions. -- Improved btape "test" and "fill" commands. - - -Items to note: !!!!! -- If you have a RedHat system, be sure to delete the /lib/tls - directory from your system. It contains defective pthreads code. -- The restore default is changed to have nothing selected by default. - You must either enter: "restore all" or after getting into the tree - selection prompt enter "mark *" to have everything selected. -- In previous versions the "all" keyword on the restore command caused - it to return without user interaction after selecting everything. - This function is now replaced by the "done" keyword (more logical). - The "all" keyword now causes everything to be selected by default. -- The default tape driver behavior is now to write only a single EOF - at the end of the tape. For most tape drives, this is totally - transparent and nothing needs to be done. For FreeBSD see below. -- FreeBSD users NOTE!!!!! - You may need the following two records to your SD Device resource for - tape drives. - - TWOEOF = yes - Fast Forward Space File = no - - The "Fast Forward Space File" is surely needed, and the TWOEOF - is needed on some systems and not others. Running the btape - "test" command will tell you. If you get an error with TWOEOF set - to yes, set it to no. - -- If you want either bsmtp or bconsole on Win32, you will need - to load the 1.32 version along with cygwin1.dll. Some solution - for this will be forthcoming in a future update. -- The daemon protocol has changed from version 1.32, you must update - everything at once. -- The database level has been updated. You must either re-initialize - your databases with: - - ./drop_bacula_tables - ./make_bacula_tables - - which will delete ALL prior catalog information, or you can - update your 1.32 database with: - - ./update_bacula_tables - - Please save your old database before dropping the tables or doing - an upgrade or you may regret it later. -- If you are updating versions older than 1.32, you can look in - the updatedb directory for scripts that you can use. You will need - to manually set the paths for your system. - -- smtp has now become bsmtp -- you *must* modify your .conf files. -- console has now become bconsole. -- console.conf is now bconsole.conf -- Please don't underestimate the repercussions of the bsmtp and bconsole - name changes! - - -New directives: -- "Close on Poll = yes/no" in SD Device resource. -- "Volume Poll Interval = time-interval" in SD Device resource. -- "Two EOF = yes/no" in SD Device resource. -- "Maximum Network Buffer Size = size" in SD Device resource. -- "Maximum Network Buffer Size = size" in FD FileDaemon (or Client) resource. -- "Console" new resource in Director conf file. - New directives: Name, Description, Password, JobACL, ClientACL, - StorageACL, ScheduleACL, RunACL, PoolACL, CommandACL, - FileSetACL, CatalogACL. -- "Max Run Time = duration" in Director Job resource. -- "Max Wait Time = duration" in Director Job resource (not fully implemented). -- "JobDefs = name-of-resource" in Director Job resource. -- "Jobdefs" new resource in Director. Same directives as for a Job. -- "Full Backup Pool = xxx" in Job resource in the Director. -- "Incremental Backup Pool = xxx" in Job resource in the Director. -- "Differential Backup Pool = xxx" in Job resource in the Director. -- Three new options on the Run override statement in a Schedule resource: - FullPool=xxx - IncrementalPool=xxx - DifferentialPool=xxx -- SpoolData=yes/no in DIR Job resource -- SpoolData=yes/no in Run override directive. -- MaximumSpoolSize in SD Device resource -- MaximumJobSpoolSize in SD Device resource -- SpoolDirectory in SD Device resource. -- Drive Index in SD Device resource for using two autochanger - drives. -- mtimeonly=yes/no on Include directive. -- keepatime=yes/no on Include directive. - -New Commands: -- "SetIP" -- Added "pool=xxx" to restore command line. -- Added "fileset=xxx" to restore command line. -- Fixed "storage=xxx" on restore command line. -- "markdir" command in restore tree. -- "unmarkdir" command in restore tree. -- "quit" command in restore tree. -- Trace option on "setdebug trace=1/0 ..." -- Update slots scan -- The "all" keyword on the restore command marks all files by default. -- The "done" keyword prevents user interaction with the tree -- used - mostly for batch scripting. - - -Additional changes: -- Slackware support -- On multiple ctl-c, exit from console quickly. -- Implement "delete job jobid=xxx jobid=yyy ..." -- Implement "purge volume=xxx volume=yyy ..." -- Add -p option to all SD programs including bacula-sd. It causes - Bacula to proceed or forge on in case of I/O errors. It is unlikely - this will help, and it is strongly recommended against running - the daemon with this option in production. -- Add a missing unlock in the jobq handler. -- Fix bug where a soft linked file and a directory had the same name - by treating the soft link as a directory and putting the entries under - it. This fixes the bug reported by Alexander Mueller. -- Apply Jess Guardiani's second fix to list autochanger volumes without - opening the drive (necessary on FreeBSD if no tape is in the drive). -- Reworked the command line handler in restore to walk through the - arguments one at a time. This makes the file= entries work correctly. - Also reworked the code that takes the MediaType and finds a - storage device. -- Add quit command to restore tree handler. -- Make restore tree handler remember if a hard link is present, and - in doing a mark, only get database entry if there is a hard link. - mark commands thus run at least 2 orders of magnitude faster. -- Add files=xxx field to run command submitted for restore. -- Add yes to restore run command if either yes or run is command line - argument. -- Make "yes" on command line argument skip prompt for modification of - run job. -- Add markdir and unmarkdir -- both affect only the directory in - question and do not do a recursive descent. -- Make tree command automatically mark all higher level directories to - be restored when a directory or a file is selected. Such directories - are indicated by preceding the name with a + to indicate that only - the directory entry is selected and not the whole directory tree. -- Modify a few tree commands to walk through all arguments rather than - just taking the first one. -- Improved btape "test" and "fill" commands. -- The ability to ask the Storage daemon on a device by device basis - to "poll" the tape drive at a given interval (minimum 1 minute). If - a tape is found, its label is read and if appropriate it is used. - This eliminates the need to do "mount" commands. -- The ability to close and re-open the device when a poll occurs. - This permits dealing with certain recalcitrant autochangers that - invalidate devices (typically on FreeBSD). -- Dan Langille has written a PostgreSQL driver for Bacula. -- Implement "update slots scan" that reads the volume label(s). -- The full form of the scan is "scan=1,2,4-5,7". With no specification, - all occupied slots are scanned. -- Turn off changer Volumes that are not current in the changer when - an "update slots" is done, or if any tape operation discovers that - the right volume is not in the slot. -- The console program will run all commands it finds in ~/.bconsolerc - at startup. -- Add Dan Langille's changes to the bacula start/stop script that - permit dropping root permissions just after startup. -- New version 1.5.5-1 Cygwin. -- Modify SD to update the catalog database when it is shutdown, - even if the job is canceled. -- Fixed seg fault in restore of multiple simultaneous jobs to - a single Volume. -- Fixed thread race problem in multiple simultaneous jobs to - a single Volume where the volume label is not in the first - tape block, so the tape is not recognized. -- Restore directory tree automatically selects all higher level - directories to be restored. -- Implement conio.c to use in console program -- mini-readline. -- Enhance "fill" command of btape -- simpler output. Use -v to - cause last block to be dumped after write and after re-read. -- Added an autochanger test to the btape "test" command. It is - automatically invoked if the autochanger is properly configured. It - is still a bit primitive but covers the essential of testing - the mtx-changer script with your autochanger. -- Select the oldest LastWritten volume during recycling. -- Added forward space file test to btape "test" command. -- All 1.32d patches applied. -- Fixed seg fault in restore of multiple simultaneous jobs to - a single Volume. -- Fixed thread race problem in multiple simultaneous jobs to - a single Volume where the volume lable is not in the first - tape block, so the tape is not recognized. +- Applied Peter Eriksson's const changes to the source code. Thanks Peter. +- Implemented a binary_insert() method for dlists -- intended to be used + in the restore tree routines. +- Turned on my bsscanf() code, which replaces sscanf() by my routines, which + are a subset of sscanf() used by Bacula, but which have known 32/64 bit + behavior rather than vendor dependent !@#$%*. diff --git a/bacula/src/count-lines b/bacula/src/count-lines index d1383c93a2..577cd61e92 100755 --- a/bacula/src/count-lines +++ b/bacula/src/count-lines @@ -1,9 +1,9 @@ #!/bin/sh rm -f 1 touch 1 -for i in . console gnome-console cats dird filed filed/win32 \ +for i in . console gnome-console gnome2-console cats dird filed filed/win32 \ win32 win32/compat findlib lib wx-console stored tools \ - win32/wx-console win32/console win32/baculafd; do + win32/wx-console win32/console win32/baculafd tray-monitor; do ls -1 $i/*.c $i/*.cpp $i/*.h $i/*.in 2>/dev/null >>1 done cat 1 | $HOME/bin/lines -- 2.39.5