From 86656399f87479a84140c3a4ae00d06be8b13cd8 Mon Sep 17 00:00:00 2001 From: Kern Sibbald Date: Sun, 13 Jun 2004 17:10:45 +0000 Subject: [PATCH] Final changes git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@1418 91ce42f0-d328-0410-95d8-f526ca767f89 --- bacula/ChangeLog | 42 ++++++++++++++++++++++++++++ bacula/ReleaseNotes | 57 ++++++++++++++++++++++++++++++++++++-- bacula/kernstodo | 39 ++++---------------------- bacula/src/cats/sql.c | 12 +++++--- bacula/src/dird/inc_conf.c | 1 + 5 files changed, 112 insertions(+), 39 deletions(-) diff --git a/bacula/ChangeLog b/bacula/ChangeLog index 83d5c6d225..5719de962e 100644 --- a/bacula/ChangeLog +++ b/bacula/ChangeLog @@ -1,4 +1,46 @@ +2004-06-09 Version 1.34.3 09Jun04 Release +12Jun04 +- Enhance regression scripts. +- Apply Tim Oberfoell's ACL patch. +11Jun04 +- 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. +10Jun04 +- Implement | and < in FD for new FileSet files. +- Implement simplistic attribute spooling statistics in status. +- Make storage=xxx on restore override the restore default. +- 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 +- 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! +- Fix UpdateDB to complain if mum_rows < 1 rather than != 1. + + 2004-06-09 Version 1.34.3 09Jun04 Release 09Jun04 - Add missing FT codes in new FileSet callback, which caused error diff --git a/bacula/ReleaseNotes b/bacula/ReleaseNotes index a7b47c8492..3e897d0679 100644 --- a/bacula/ReleaseNotes +++ b/bacula/ReleaseNotes @@ -1,7 +1,60 @@ - Release Notes for Bacula 1.34.3 + Release Notes for Bacula 1.34.4 + + Bacula code: Total files = 364 Total lines = 103,481 (*.h *.c *.in) + +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. + + - Bacula code: Total files = 364 Total lines = 102,925 (*.h *.c *.in) Changes for 1.34.3: Major Features: diff --git a/bacula/kernstodo b/bacula/kernstodo index 9cc129afae..0aef6ef34a 100644 --- a/bacula/kernstodo +++ b/bacula/kernstodo @@ -1,50 +1,18 @@ Kern's ToDo List 10 June 2004 -1.34.4 Items to do: +1.35 Items to do: - Implement SIGHUP in Dir - Implement fast tree insert (doubly linked list?) - Do tape alerts -- see tapealert.txt - When restore started from console, report jobid. - Feedback while the tree is being built. -- Add reporting in attr despooling. - Win32 inc problem when new directory added. - On Win95 The error I when I installed 1.34.2 clients: The BACULA-FD file is linked to missing export KERNEL32.DLL:GetFileAttributesExA. -- Mark a non-removable disk Volume in error rather than asking sys op to - mount it. -- Implement Fixed storage LabelFormat test. - -Documentation from Christopher Hull on new client job requests: -=== -The command can be anything that cmd.exe or command.com will recognize -as a executable file. Specifiying the executable's extention is -optional, unless there is an ambiguity. (i.e. ls.bat, ls.exe) - -The System %Path% will be searched for the command. (under the -envrionment variable dialog you have have both System Environment and -User Environment, we believe that only the System environment will be -available to bacual-fd, if it is running as a service.) - -System environment varaible can be called out using the %var% syntax and -used as either part of the command name or arguments. - -When specifiying a full path to an executable if the path or executable -name contains whitespace or special characters they will need to be -quoted. Arguments containing whitespace or special characters will also -have to be quoted. - ClientRunBeforeJob = "\"C:/Program Files/Software -Vendor/Executable\" /arg1 /arg2 \"foo bar\"" - -The special characters &()[]{}^=;!'+,`~ will need to be quoted if part -of a filename or argument. - -If someone is logged in a blank "command" window running the commands -will be present during the execution of the command. -=== Documentation to do: (any release a little bit at a time) - Document query file format. @@ -1094,3 +1062,8 @@ Block Position: 0 - Add regression of btape "fill" ==== Done in 1.34.4 - Implement "label slots=1,2... pool=yyy barcodes" +- Mark a non-removable disk Volume in error rather than asking sys op to + mount it. +- Implement Fixed storage LabelFormat test. +- Add reporting in attr despooling. + diff --git a/bacula/src/cats/sql.c b/bacula/src/cats/sql.c index 9ef630a3c1..af3cdb11e2 100644 --- a/bacula/src/cats/sql.c +++ b/bacula/src/cats/sql.c @@ -276,7 +276,11 @@ void db_start_transaction(JCR *jcr, B_DB *mdb) db_unlock(mdb); #endif -#ifdef HAVE_POSTGRESQL +/* + * This is turned off because transactions break + * if multiple simultaneous jobs are run. + */ +#ifdef xAVE_POSTGRESQL db_lock(mdb); /* Allow only 25,000 changes per transaction */ if (mdb->transaction && mdb->changes > 25000) { @@ -284,7 +288,7 @@ void db_start_transaction(JCR *jcr, B_DB *mdb) } if (!mdb->transaction) { db_sql_query(mdb, "BEGIN", NULL, NULL); /* begin transaction */ - Dmsg0(400, "Start SQLite transaction\n"); + Dmsg0(400, "Start PosgreSQL transaction\n"); mdb->transaction = 1; } db_unlock(mdb); @@ -304,12 +308,12 @@ void db_end_transaction(JCR *jcr, B_DB *mdb) db_unlock(mdb); #endif -#ifdef HAVE_POSTGRESQL +#ifdef xAVE_POSTGRESQL db_lock(mdb); if (mdb->transaction) { db_sql_query(mdb, "COMMIT", NULL, NULL); /* end transaction */ mdb->transaction = 0; - Dmsg1(400, "End SQLite transaction changes=%d\n", mdb->changes); + Dmsg1(400, "End PostgreSQL transaction changes=%d\n", mdb->changes); } mdb->changes = 0; db_unlock(mdb); diff --git a/bacula/src/dird/inc_conf.c b/bacula/src/dird/inc_conf.c index c5f3d1fc87..deb600e098 100644 --- a/bacula/src/dird/inc_conf.c +++ b/bacula/src/dird/inc_conf.c @@ -83,6 +83,7 @@ static RES_ITEM options_items[] = { {"base", store_base, NULL, 0, 0, 0}, {"wild", store_wild, NULL, 0, 0, 0}, {"exclude", store_opts, NULL, 0, 0, 0}, + {"aclsupport", store_opts, NULL, 0, 0, 0}, {NULL, NULL, NULL, 0, 0, 0} }; -- 2.39.5