]> git.sur5r.net Git - bacula/docs/blob - docs/techlogs/2004/RN-1.34.5
Initial revision
[bacula/docs] / docs / techlogs / 2004 / RN-1.34.5
1
2           Release Notes for Bacula 1.34.5
3
4   Bacula code: Total files = 364 Total lines = 103,481 (*.h *.c *.in)
5
6 Changes for 1.34.5:
7 Major Changes:
8 - Correct socket close on Win32 in bnet.c (in addition to compat.cpp).
9   Caused fd leak in Win32 for each connection.
10 - Fix a number of places in query.sql where multiple JobIds are
11   printed (due to JobMedia records).
12 - Abort configure if Internal is selected as the database.
13 - Close socket in SD when connection rejected. Caused fd leaks.
14
15 Items to note!!!!
16 - If you are upgrading from 1.32, please be sure to see the database
17   upgrade procedure under the 1.34.0 notes.
18
19 Other Items:
20 - Fixed Gnome crash on up/down arrow with no history.
21 - Fixed btape "fill" crash with multiple tape option.
22 - Add new query: List jobs on Volume given Volume name.   
23 - Remove vol labeled test in askdir update_volume_info so that non-labeled
24   Volume in catalog can be marked in error.
25 - Initialize job_start_wait cond variable after every new_jcr() otherwise
26   NetBSD gets error in library when trying to delete it without being inited.
27 - Fix typo (9 instead of 0) return status in write_new_volume_label.
28 - Fix mount.c to call routine that correctly marks a volume in error.
29 - Eliminate printing INFO message in UpdateDB (cats) -- it generates
30   "false" error messages.
31 - Eliminate some GTK error messages when running the Gnome2 console.
32 - Apply Peter Eriksson's lib file order changes in linking for IRIX.
33 - Add testimonials to the Web page
34 - Add the bugs list to the Web page "lists".
35 - Clarify the English in SuSE and Slackware when SD not running.
36 - Applied the patches sent by Andreas Jellinghaus: build Gnome and  
37   wx-console in client-only build if configured; add ./configure option
38   to permit setting of sbin modes -- default is 0745 as before; remove
39   cats library from Gnome console build; remove old version from Gnome
40   About box. Thanks Andreas.
41 - Correct a typo in the FreeBSD SD autostart install.
42 - New bacula.spec.in from Scott.
43 - Use /usr/lib/sendmail instead of mail if no mail program is configured.
44   Submitted by Peter Eriksson. This *should* be more portable.
45
46
47 Changes for 1.34.4:
48 Major Changes/Features:
49 - Implement | and < in FD for new FileSet files.
50 - Implement simplistic attribute spooling statistics in status.
51 - Make storage=xxx on restore override the restore default.
52 - Clear InChanger flag during "update barcodes" if no VolName present,
53   i.e. no Volume in Changer.
54 - An update pulled in Christopher Hull's fixes to the client program          
55   execution on Win32 to search the path and use COMSPEC.  New rules
56   apply!
57 - In SD mount.c, if get I/O error or read label error on non-removable
58   Volume, mark the volume in error and retry. 
59 - Apply Tim Oberfoell's ACL patch.
60
61 Items to note!!!!
62 - If you are upgrading from 1.32, please be sure to see the database
63   upgrade procedure under the 1.34.0 notes.
64 - If your system has a libacl in the standard location, acl's will
65   be enabled, and you can turn them on with "aclsupport=yes" as an
66   Include or Option option.
67
68 Other Items:
69 - Enhance regression scripts.
70 - Implement bsscanf() because sscanf on FreeBSD amd64 stores
71   in 64 bit words for %ld. Turned on for the moment only for
72   FreeBSD amd64.
73 - Fix all conversions of ptr to int to use (long unsigned) this
74   works on i386 and amd64.
75 - Add mtimeonly and keepatime to new Options list -- omitted before.
76 - Add a bit more authentication debug code.
77 - Start variable name/overload cleanup in SD
78 - Fix sscanf() in askdir.c scanning into bool to use local int.
79 - Make max_spool_size int to allow proper arithmetic.
80 - Remove trailing junk on sscanf() of "Hello Start Job" in SD.
81 - Make ask_sysop_to_mount_volume() always ask sysop.
82 - In SD mount.c, if get I/O error or read label error on non-removable
83   Volume, mark the volume in error and retry. 
84 - In SD mount.c, if non-removable volume, never ask sysop to mount. We
85   ask sysop if there are no appendable Volumes though.
86 - The above 3 items fix the looping error Bacula would get if the
87   Volume was in the catalog but didn't exist -- or was zero bytes 
88   long.
89 - Fix an uninitialized stack variable in append.c that caused data
90   corruption on amd64 machines and *could* cause the same on other
91   machines.
92 - Fix a seg fault in automatic tape labeling.
93 - Eliminate a PoolId=nn when zeroing the InChanger flag for a Volume.
94 - Add a bit more debug info to bls.c
95 - Fix UpdateDB to complain if mum_rows < 1 rather than != 1.
96
97
98
99
100 Changes for 1.34.3:
101 Major Features:
102 - Implemented and documented the first cut of the new FileSet directives.
103   The first cut permits using wild-card matches for including files in
104   addition to excluding files.    
105 - The Windows rescue procedure is confirmed for WinXP/2K (probably not NT).
106 - Modification of the PostgreSQL database creation scripts to improve
107   performance by removing foreign keys.
108 - Use trasactions on PostgreSQL to improve performance.
109 - Restore jobs will now not start until they can get exclusive use
110   of the Storage daemon Device previously they erred.
111 - Permit execution of more kinds of Win32 files with ClientRunxxxJob.
112   If an absolute path is specified, the filename must contain the correct
113   extention.
114
115 Items to note!!!!
116 - If you are upgrading from 1.32, please be sure to see the database
117   upgrade procedure under the 1.34.0 notes.
118 - Although the daemons are compatible for all 1.34.2 features,
119   the new FileSet directives are not compatible with 1.34.2 daemons.
120 - Fixed several query.sql bugs.
121 - The behavior of the hourly, daily, weekly, and monthly keywords in
122   the Run directive have been changed to be more logical -- they only
123   affect the one item mentioned rather than all items.
124
125 Other items:
126 - The wx-console has had significant improvements.
127 - Upgraded to latest autoconf files.
128 - Added BaculaRoadmap_v1.1.pdf in doc directory
129 - Fixed a crash in the btape "fill" command.
130 - Added a new alpha directory to platforms -- first cut.
131 - The mtx-changer script was broken in 1.34.2 -- it is now fixed.
132 - Pass all arguments on database creation scripts.
133 - I finally found and fixed the bug that in some cases required a double
134   mount to get Bacula to look at the tape again.
135 - Thanks to user input corrected (I think) the negative values that
136   sometimes occurred in the spooling statistics.
137 - Fixed several bsmpt bugs thanks to user input.
138 - Added user supplied code to read the Directors's conf file in dbcheck so
139   that remote databases could be contacted as well as the working directory
140   and other catalog parameters obtained.
141 - Fixed changing a Volume from one Pool to another in "update volumes".
142
143
144
145
146
147
148
149
150
151 Changes for 1.34.2:
152 Major Features:
153 - wx-console can now be built both under GTK and Win32. It is     
154   now part of the Win32 binary release. It has a very nice tree
155   oriented restore.  Thanks to Nicolas Boichat for this program.
156 - bconsole is now included in the Win32 binary release.
157            
158 Items to note!!!
159 - bscan restored StartBlocks one block off resulting in loss of
160   data if any bscanned volumes were restored. Thanks to Gregory
161   for reporting this. It is fixed in this release.
162 - Due to an oversight, "Maximum Job Spool Size" was is not implemented.
163   It will be in the next release.
164 - To build wx-console on Linux. Download wxWidgets 2.4.2 from wxwidgets.org,
165   build and install it on your system, then add --enable-wx-console on
166   your Bacula ./configure and it will be built and installed.  
167 - For both the Win32 and Linux GTK versions of wx-console, you must
168   create a wx-console.conf in the current directory. The contents are
169   identical to a bconsole.conf file.                        
170
171 Other items:
172 - Make SD utility programs accept device name as well as archive device
173   on command line.
174 - Update docs
175 - Remove old debug code from Win32 FD.
176 - A new version of depkgs-win32 was released containing the Win32
177   wxWidgets source code.
178 - Disable SIGHUP code in Director which is not yet complete.
179
180
181 Release 1.34.1:  
182 - Autochanger users, please note you must add %d to the end of the
183   changer command line in your Device resource in your bacula-sd.conf
184   file.
185 - There is a new wx-console program that does restores with a    
186   tree allowing you to visually select what files are to be restored.
187   It is in a preliminary stage of development, but can be easily
188   be built under Linux with GTK, and with just a bit more difficulty
189   under Win32 with MinGW.
190 - Fixed a major race condition in the job scheduler when multiple
191   simultaneous jobs is enabled. This occurred only when on job had
192   blocked another because of resource usage.
193 - Fixed crash in SD during restore.
194 - Changed the backup report to indicate "Backup OK -- with warnings
195   if any warning messages were generated.
196 - Change output of restore report to indicate:
197   "Restore OK -- warning file count mismatch"
198 - Make backup report say "Backup OK with warnings" if either FD or SD
199   report any non-fatal errors.
200 - Modify bscan to print some elementary statistics (#Jobs, #Files, ...)
201   added to catalog.
202 - Added --enable-wx-console and updated Makefile.in
203 - Fix mtx-changer so that the calling sequence is compatible
204   with the previous version (the new one required arguments that
205   were not necessarily used).
206 - Document how to use stunnel with Bacula.
207 - Fix crash in query command.
208 - Remove schedule from the default restore job.
209 - Fix data spooler to use min/max tape blocking factors.
210 - Automatically turn of conio if library not found instead of bombing.
211 - Cleaned up a lot of copyright dates.
212 - Try to keep spool statistics from going negative.
213 - Added new Pools chapter. Doc about using two disks.
214 - Attempt to keep the spool file statistics size from going
215   negative.
216 - Fix the Director's Scheduled Jobs: list to have a ===
217   termination.
218 - Fixed ./configure to disable readline rather than stop if
219   readline.h is not found
220 - Fixed a typo in the SQLite database update script as reported
221   by Robert J. Clark - thanks.
222 - Removed src/win32/pthreads and src/win32/zlib from the source
223   tree.
224 - Created a new depkgs-win32 that has the pthreads and zlib source
225   code.
226 - Removed the JobDefs from the default Restore job as it has a
227   schedule. Thanks to Matt Howard for this.
228
229
230
231 Release 1.34.0
232 Major Features:
233 - Data spooling which reduces tape shoe-shine during Inc backups,         
234   and permits multiple simultaneous backups without interleaved blocks.
235 - Native Win32 client -- much faster and restores permissions correctly
236   (thanks to Christopher Hull)
237 - New Windows style installer for the Win32 Client.
238 - PostgreSQL database driver (thanks to Dan Langille).
239 - Polling of devices eliminating need to unmount and mount from
240   console.
241 - Improved Autochange support of Slots (update slots scan).
242 - Autochanger support for multiple drives (I think).
243 - New conio code to implement Console command line editing and history.
244 - JobDefs resource permits smaller .conf files for Director
245 - Access console lists for the Console
246 - Pool level overrides.
247 - Daemon "status" is recovered across daemon executions.
248 - Improved btape "test" and "fill" commands.
249
250
251 Items to note:  !!!!!
252 - If you have a RedHat system, be sure to delete the /lib/tls
253   directory from your system. It contains defective pthreads code.
254 - The restore default is changed to have nothing selected by default.
255   You must either enter: "restore all" or after getting into the tree
256   selection prompt enter "mark *" to have everything selected.
257 - In previous versions the "all" keyword on the restore command caused
258   it to return without user interaction after selecting everything. 
259   This function is now replaced by the "done" keyword (more logical).
260   The "all" keyword now causes everything to be selected by default.
261 - The default tape driver behavior is now to write only a single EOF
262   at the end of the tape. For most tape drives, this is totally            
263   transparent and nothing needs to be done. For FreeBSD see below.
264 - FreeBSD users NOTE!!!!!
265   You may need the following two records to your SD Device resource for
266   tape drives.
267
268      TWOEOF = yes
269      Fast Forward Space File = no
270
271   The "Fast Forward Space File" is surely needed, and the TWOEOF          
272   is needed on some systems and not others. Running the btape
273   "test" command will tell you. If you get an error with TWOEOF set   
274   to yes, set it to no.
275
276 - If you want either bsmtp or bconsole on Win32, you will need
277   to load the 1.32 version along with cygwin1.dll. Some solution
278   for this will be forthcoming in a future update.
279 - The daemon protocol has changed from version 1.32, you must update 
280   everything at once.
281 - The database level has been updated. You must either re-initialize
282   your databases with:
283    
284     ./drop_bacula_tables
285     ./make_bacula_tables
286
287   which will delete ALL prior catalog information, or you can
288   update your 1.32 database with:
289
290     ./update_bacula_tables
291
292   Please save your old database before dropping the tables or doing
293   an upgrade or you may regret it later.
294 - If you are updating versions older than 1.32, you can look in
295   the updatedb directory for scripts that you can use. You will need
296   to manually set the paths for your system.
297
298 - smtp has now become bsmtp -- you *must* modify your .conf files.
299 - console has now become bconsole.
300 - console.conf is now bconsole.conf
301 - Please don't underestimate the repercussions of the bsmtp and bconsole 
302   name changes!
303
304
305 New directives:
306 - "Close on Poll = yes/no" in SD Device resource.
307 - "Volume Poll Interval = time-interval" in SD Device resource.
308 - "Two EOF = yes/no" in SD Device resource.
309 - "Maximum Network Buffer Size = size" in SD Device resource.
310 - "Maximum Network Buffer Size = size" in FD FileDaemon (or Client) resource.
311 - "Console" new resource in Director conf file.
312      New directives: Name, Description, Password, JobACL, ClientACL,
313         StorageACL, ScheduleACL, RunACL, PoolACL, CommandACL,
314         FileSetACL, CatalogACL.
315 - "Max Run Time = duration" in Director Job resource.
316 - "Max Wait Time = duration" in Director Job resource (not fully implemented).
317 - "JobDefs = name-of-resource" in Director Job resource.
318 - "Jobdefs" new resource in Director. Same directives as for a Job.
319 - "Full Backup Pool = xxx" in Job resource in the Director.
320 - "Incremental Backup Pool = xxx" in Job resource in the Director.
321 - "Differential Backup Pool = xxx" in Job resource in the Director.
322 - Three new options on the Run override statement in a Schedule resource:
323    FullPool=xxx
324    IncrementalPool=xxx
325    DifferentialPool=xxx
326 - SpoolData=yes/no in DIR Job resource
327 - SpoolData=yes/no in Run override directive.
328 - MaximumSpoolSize in SD Device resource
329 - MaximumJobSpoolSize in SD Device resource
330 - SpoolDirectory in SD Device resource.
331 - Drive Index in SD Device resource for using two autochanger
332   drives.
333 - mtimeonly=yes/no on Include directive.
334 - keepatime=yes/no on Include directive.
335
336 New Commands:
337 - "SetIP"
338 - Added "pool=xxx" to restore command line.
339 - Added "fileset=xxx" to restore command line.
340 - Fixed "storage=xxx" on restore command line.
341 - "markdir" command in restore tree.
342 - "unmarkdir" command in restore tree.
343 - "quit" command in restore tree.
344 - Trace option on "setdebug trace=1/0 ..."
345 - Update slots scan
346 - The "all" keyword on the restore command marks all files by default.
347 - The "done" keyword prevents user interaction with the tree -- used
348   mostly for batch scripting.
349
350
351 Additional changes:
352 - Slackware support
353 - On multiple ctl-c, exit from console quickly.
354 - Implement "delete job jobid=xxx jobid=yyy ..."
355 - Implement "purge volume=xxx volume=yyy ..."
356 - Add -p option to all SD programs including bacula-sd. It causes
357   Bacula to proceed or forge on in case of I/O errors. It is unlikely
358   this will help, and it is strongly recommended against running
359   the daemon with this option in production.
360 - Add a missing unlock in the jobq handler.
361 - Fix bug where a soft linked file and a directory had the same name
362   by treating the soft link as a directory and putting the entries under
363   it. This fixes the bug reported by Alexander Mueller.
364 - Apply Jess Guardiani's second fix to list autochanger volumes without
365   opening the drive (necessary on FreeBSD if no tape is in the drive).
366 - Reworked the command line handler in restore to walk through the
367   arguments one at a time. This makes the file= entries work correctly.
368   Also reworked the code that takes the MediaType and finds a 
369   storage device.
370 - Add quit command to restore tree handler.
371 - Make restore tree handler remember if a hard link is present, and
372   in doing a mark, only get database entry if there is a hard link.
373   mark commands thus run at least 2 orders of magnitude faster.
374 - Add files=xxx field to run command submitted for restore.   
375 - Add yes to restore run command if either yes or run is command line
376   argument.
377 - Make "yes" on command line argument skip prompt for modification of
378   run job.
379 - Add markdir and unmarkdir -- both affect only the directory in
380   question and do not do a recursive descent.
381 - Make tree command automatically mark all higher level directories to
382   be restored when a directory or a file is selected.  Such directories
383   are indicated by preceding the name with a + to indicate that only
384   the directory entry is selected and not the whole directory tree.
385 - Modify a few tree commands to walk through all arguments rather than
386   just taking the first one.
387 - Improved btape "test" and "fill" commands.
388 - The ability to ask the Storage daemon on a device by device basis
389   to "poll" the tape drive at a given interval (minimum 1 minute). If
390   a tape is found, its label is read and if appropriate it is used.
391   This eliminates the need to do "mount" commands.
392 - The ability to close and re-open the device when a poll occurs. 
393   This permits dealing with certain recalcitrant autochangers that
394   invalidate devices (typically on FreeBSD).
395 - Dan Langille has written a PostgreSQL driver for Bacula.
396 - Implement "update slots scan" that reads the volume label(s).
397 - The full form of the scan is "scan=1,2,4-5,7". With no specification,
398   all occupied slots are scanned.
399 - Turn off changer Volumes that are not current in the changer when
400   an "update slots" is done, or if any tape operation discovers that
401   the right volume is not in the slot.
402 - The console program will run all commands it finds in ~/.bconsolerc
403   at startup.
404 - Add Dan Langille's changes to the bacula start/stop script that 
405   permit dropping root permissions just after startup.
406 - New version 1.5.5-1 Cygwin.
407 - Modify SD to update the catalog database when it is shutdown,
408   even if the job is canceled.
409 - Fixed seg fault in restore of multiple simultaneous jobs to 
410   a single Volume.
411 - Fixed thread race problem in multiple simultaneous jobs to
412   a single Volume where the volume label is not in the first 
413   tape block, so the tape is not recognized.
414 - Restore directory tree automatically selects all higher level
415   directories to be restored.
416 - Implement conio.c to use in console program -- mini-readline.
417 - Enhance "fill" command of btape -- simpler output. Use -v to
418   cause last block to be dumped after write and after re-read.
419 - Added an autochanger test to the btape "test" command. It is 
420   automatically invoked if the autochanger is properly configured.  It
421   is still a bit primitive but covers the essential of testing
422   the mtx-changer script with your autochanger.
423 - Select the oldest LastWritten volume during recycling.
424 - Added forward space file test to btape "test" command.
425 - All 1.32d patches applied.
426 - Fixed seg fault in restore of multiple simultaneous jobs to 
427   a single Volume.
428 - Fixed thread race problem in multiple simultaneous jobs to
429   a single Volume where the volume lable is not in the first 
430   tape block, so the tape is not recognized.