1 Technical notes on version 1.33
6 - Turn off SIGQUIT in console.
8 - A good number of document updates.
9 - Fixed the order which multiple files are accepted for
10 inclusion in the restore tree due to the fact that PostgreSQL
11 returns files in a different order from their insertion.
13 - Fix autochanger test in btape. It used old editing routines.
14 - Fix run_program to return 0 if program runs and no output.
15 - Add more debug to run_program.
16 - Make signal debug print signal string.
18 - Build console with client-only build.
19 - Add better error messages to some of the db_xxx routines.
20 - Apply Christopher Hull's patches for proper Win32 shutdown.
21 - Eliminate True and False in favor of true and false.
22 - Put correct thread id in jcr once the correct thread is running.
23 - Zap head and tail pointers in dlist when everything is removed.
24 - Rework sm_dump() so that it won't overrun a buffer when editing
26 - Fix watchdog to properly remove entries while walking the
28 - Fix termination of last_jobs list by removing broken code.
30 - Update dbcheck to fix Paths without a trailing slash and Filenames
31 with a trailing slash.
33 - Add -p option to all SD programs including bacula-sd. It causes
34 Bacula to proceed or forge on in case of I/O errors. It is unlikely
35 this will help, and it is strongly recommended against running
36 the daemon with this option in production.
37 - Tweaked the Makefile not to create the gnome directories except
38 when doing a gnome install.
40 - Implement Qmsg() queuing of messages to prevent recursion especially
41 for bnet.c where recursion is fatal.
42 - Add detection of ncurses if the termcap lib is not found.
43 - Tweak winabout -- start cleanup.
44 - Fix dlist again, when list is destroyed, be sure to null head and
47 - Add Scott's new gnome helper targets
48 - Make the default for restore to have nothing marked.
49 - The "all" keyword on the restore command marks everything by
51 - The "done" keyword on the restore command prevents user interaction
52 with the tree routines -- used mainly for scripting (regression ...).
53 - Correct a bug in the last_sibling code.
54 - Add alphabetic sorting of siblings
56 - Based on Mike Acar's suggestions rework tree insert routines. Improve
57 performance by using a last_sibling link for inserts.
59 - Apply corrected SQL to sql_get.c supplied by Dan Langille.
60 - Implement "delete job jobid=xxx jobid=yyy ..."
61 - Implemente "purge volume=xxx volume=yyy ..."
62 - Fix buffer overrun in query string substitution.
64 - Fix bad format %s instead of %d for editing new slot in update volume.
65 Reported by Vadim Zotov.
66 - Better error diagnostics in ./configure for detecting termcap library.
68 - Restore old sql.c split_path and file name since it seems to have
69 broken the Verify stuff.
71 - Hunt down missing free_locked_jcr() in SD that caused zombies.
72 - Modify status outputs to be more consistent for zombie checking.
73 - Add tests to regression script for zombie jobs.
74 - Set EIO in dev_errno for all error returns when bad data found. This
75 fixes ERR=Success messages.
76 - Make error messages all contain ERROR for easy regression testing.
77 - Add sanity check in DIR for VolFiles becoming smaller.
79 - Second cut GTK+ restore GUI. Ready for testing but much more to do.
80 - Phil reported an sql path length=0 message. This broke saves of
82 - Fixed seg fault in btape "test" due to missing allocation of dcr.
83 - Tweaked some btape messages.
84 - Sort Volume names in Job report according to the order they were
85 written -- user request.
87 - First cut GTK+ restore GUI.
88 - Applied bsmtp patch supplied by a user. Thanks.
89 - Made a new split_path_and_filename() subroutine -- in lib/scan.c
91 - Fix "typos" in RedHat install-autostart Makefile.in
93 - Rework SD status command -- more needed.
94 - Added two tar files that Phil sent for adding slackware support.
95 Thanks Phil and Matt Howard.
96 - Fix relabel command -- || should have been &&.
97 - Correct once more the scheduling algorithm -- this time it should
100 - Implement simple spool statistics printed by "status sd".
101 - Cleanup/add spool error messages.
102 - On multiple ctl-c, exit from console quickly.
103 - Implement code to select a different Volume in the SD if the
104 current Volume is busy -- requested by Patrick Cole.
105 - Change postgreSQL make tables to use bigint instead of integer
106 for StartBlock and EndBlock because
107 there is no unsigned integer in postgreSQL and these fields use 32 bits.
108 - Implement multiple drive autochanger support -- prompted by email of
111 - Update version and date in Win32 build.
112 - Fix bug in run_conf with month range zapping wday and wom.
113 - Correct editing of port for PQsetdbLogin in postgresql.c as reported
114 by J. Conroy, and do a second try.
116 - Integrate Phil's Makefile patch.
117 - Add SpoolDirectory to SD Device resource.
118 - Add MaximumJobSpoolSize to SD Device resource.
119 - Add MaximumSpoolSize to SD Device resource.
120 - Implement the above.
121 - Make despooling lock the device so only it writes
122 to the device during despooling.
124 - Data spooling now passes the regression tests.
125 - Added "Files Expected" to the restore job report.
126 - Implemented SpoolData = yes/no in the Job resource
127 - Implemented SpoolData = yes/no in the Run overrides.
128 - Note, you must have a 1.33.4-09Mar05 SD or later with the Director since
129 the DIR->SD protocol has changed to support data spooling.
130 - Remove the confusing "Which DBMS do you want to use (please select only one):"
131 messages from ./configure.
132 - Fix broken Jmsg with missing argument in find_one.c
134 - Second cut data spooling code.
135 - Fix missing piece of yesterday's patch.
137 - Integrate patches supplied by Jason Conroy that fix Slot numbers
140 - This version contains a *major* addition to the SD structures.
141 Many variables have been moved out of the JCR into a new DCR
142 (Device Context Record). This required quite a few changes, and
143 introduced a bit of instability. In the end, after a few more
144 rounds of changes, the DCR will replace virtually all arguments
145 to the low level SD read/write routines. This change permits
146 (with a bit more code) the SD to write to multiple devices at
147 the same time for a single Job. It also facilitates adding the
149 - Added a patch that fixed the port specification for postgresql.
150 - Fixed findlib/find_one.c so that it will complain about backing
151 up a hard linked file twice, which makes a restore impossible.
152 - Tighten up permissions on pid file.
153 - Attempt to avoid warnings when casting 64 bit pointers to an
155 - Added skeleton code for data spooling.
156 - Make sure spooled attributes are discarded on error.
158 - Updated getdiskinfo in rescue/linux to handle the fact that the
159 sfdisk -s option now includes info on partitions. Also, before
160 creating the diskinfo files, clean out the old ones.
162 - Add debug and error output to jobq.c
163 - Fix some minor errors in debug output of scheduler.c
164 - Add "trace on/off" command and modify trace code in message.c
165 to work off trace flag rather than #defines.
167 - If console is found during install warn user (new name is bconsole).
168 - On install copy console.conf to bconsole.conf if it exists.
169 - Make RunAfterJob error non-fatal.
170 - Rework minor details in status output.
171 - Attempt to define all values for "consoles" in JCR to avoid
174 - Use net start bacula to start Bacula on WinXP/NT/2K
175 systems after installation.
176 - Change a few strcpy()s to bstrncpy()s in signal.
177 - Add "gui on/off" command to console to turn on gui mode,
178 which will adapt Bacula better to batch or gui programs.
179 Currently, it prevents commas from being inserted into
180 numbers in the list command.
181 - Tweak some of the Makefiles so that the install is done with
182 the right program (nothing really changed).
183 - Install logrotate in the "make autostart" of Bacula on RedHat.
184 - Implement SIGHUP while jobs are running. It *seems* to work but is
185 a bit fragile and still crashes if you push it. More work needed.
186 - Applied Phil's GNOME 1.4 patch. Very clean. Thanks Phil.
187 - Major updates to the native Win32 installer.
189 - Restructure free of conf resources to handle job_end_push()
190 and SIGHUP. Lots of changes little substance.
192 - Add mtimeonly=yes/no and keepatime=yes/no to Include list
194 - Allow no modifier in time and size specifications.
195 - Attempt to implement disk seeking. More work needed.
196 - Implement more in win32 installer and test it.
198 - Implement kb, mb, and gb modifiers for size, which mean
199 1,000 bytes, 1,000,000, ... bytes.
200 - Add Makefile to src/win32 to allow building the full
201 release -- it calls nmake where appropriate.
202 - Remove the rsi directory from win32 as suggested by Christopher
203 - Add Michel Meyers' nsi file to win32 and integrate it with
206 - Add the frigging _O_BINARY to the right variable. Win32 works!
207 - Add debug code to state file. There is a problem with Win32 read
208 returning one byte less than it should.
209 - Implement a number of new functions for alist so that it has
210 equivalent functionality to dlist. It will be used for
212 - More work on state file.
213 - Added a popup message box on Windows if Bacula Aborts.
214 - Attempt to shutdown the FD server, but doesn't work on Windows. This
215 would have given a cleaner shutdown, no problem.
218 - Attempt to fix state file on Win32 -- no luck.
219 - Add HPUX tweaks to configure.in
220 - Update quickstart and install.wml of doc.
221 - Eliminate extern int h_errno from bnet.c by including netdb.h
222 - Eliminate NumJobs from last_job structure so that FD and SD
223 correctly report what is in the state file.
225 - Implement daemon state file, and save/restore last_jobs list.
226 - Fix time routines in win32 compat.cpp
227 - Fix a bug of not checking the bpipe_open() status in do_shell_expansion().
229 - Tweak new native Win32 FD to work on my system.
230 - Add Volker's bacula script to the SuSE directory and convert it
232 - Make LockRes() and UnlockRes() use read/write locks and have
233 debug info to trace locking and unlocking.
234 - Begin work of implementing SIGHUP. It is now enabled for
235 the Director and works only if there are no jobs running,
236 in addition, if the new conf file is incorrect, it will
237 terminate Bacula. Much more work to be done. I've figured
238 out a scheme to implement it with running jobs without
239 adding individual semaphores or use counts.
240 - Sort "list jobs" by StartTime rather than JobId, which can
243 - Added more const definitions for compiling on Solaris' C++.
244 16Feb04 1.33.3 released
245 - Add a lot of "const" to char * arguments to keep the native
247 - Added first cut of message queuing to prevent recursion in
248 low level routines. This code is not yet working.
249 - Spent a *huge* amount of time looking at the tape driver
250 code in the wake of several reports of tape labels getting
251 trashed. The code looks fine.
252 - Created a tape with an error (by writing a block at the
253 beginning of a tape that had valid data), and found that
254 Under Linux there is no way to read past an I/O error.
255 I tried mt; I tried my own program (btape); and I tried
256 using scsitape, which talks directly to the scsi driver.
257 This is *VERY BAD* news.
258 - I spent an *enormous* amount of time enhancing the btape
259 test program as well as making the fill command work with
260 both one and two tapes and the autochanger if configured.
261 The multiple tape fill test is now quite comprehensive.
262 It checks the last block on the first tape, the first block
263 on the second tape, and the last block (11) on the second
265 - Teaked the tape driver for several functions to use the
266 OS driver's notion of mt_file if there is an error.
268 - Add DB update scripts retrieved by Scott to a new updatedb
269 directory at the top level.
270 - Add -p option to bcopy to allow ignoring errors on input.
271 - COALESCE(xx,0) does not work on PostgreSQL because the 0 is not a
272 correct time. Replaced by adding LastWritten IS NULL to the sort
273 line as was first suggested by JML.
275 - Use COALESCE(LastWritten, 0) in sql_find.c to get NULLs to sort last.
276 - Add write/read and positioning test to btape "test" program.
278 - Fix bad printf of InChanger flag reported by Pascal Pederiva.
279 - Fix bad indexing off stack in authenticate.c reported by
282 - Add \n to hosts.access reject message.
283 - Implement security message class and make hosts.access message use
286 - Fix check_memory bug in ua_query.c, which gives a bus error on Solaris.
288 - Added backup to cdwriter script to examples provided by Johan Decock.
289 - Fixed a bug where ls really did lsmark (just invert command table
291 - Fix bug where a soft linked file and a directory had the same name
292 by treating the soft link as a directory and putting the entries under
293 it. This fixes the bug reported by Alexander Mueller.
294 - Fix a deadlock situation in the new watchdog code where the
295 watchdog locks its semaphore, and attempts to lock the jcr_chain,
296 but another thread has locked the jcr_chain and wants to free a
297 watchdog, which tries to lock the watchdog semaphore -- deadlock!
298 Used read/write locks to solve the problem.
299 - Improved the error messages when I/O errors or buffer id errors
300 are detected, and prevent non-sense errors from being printed.
301 - Fix some incorrect messages in restore if no name is supplied
302 on the command line (e.g. pool= ).
303 - Add the third digit to the release version number.
304 - The strange "stuck" behavior on my development/production machine
305 were caused by the /lib/tls pthreads library. Removing it fixed
308 - Add -l option to bls that causes it to ignore tape label errors.
310 - Correct problems with jobs scheduled at a later time by hand.
311 Missing unlock(), backward test on pthread_create status.
312 - Fix setip crash reported by Alan Brown.
313 - Create bacula.spec.in in SuSE directory from Scott.
314 - Fix missing unlock() in ua_status on access denial.
315 - Lots of little cleanups, improving jcr use_count debug printing.
316 - Add EMSG to mem_pool utilization statistics.
318 - New bacula.spec.in file from Scott
319 - Add Scott's spec file to the platforms/suse directory
320 - Modify configure.in to make platforms/suse/bacula.spec
321 - Do not allow a resource name to be specified twice.
323 - Apply Jess Guardiani's second fix to list autochanger volumes without
324 opening the drive (necessary on FreeBSD if no tape is in the drive).
325 - Added Postgresql configure search libraries recommended by Alan Brown.
327 - Reworked the command line handler in restore to walk through the
328 arguments one at a time. This makes the file= entries work correctly.
329 Also reworked the code that takes the MediaType and finds a
332 - I've noticed that the backups of Rufus, my development machine, can be
333 "stuck" for about 12 hours, then suddenly they run. In running the
334 debugger, I see that it was stuck on the select() statement waiting
335 for the Hello. Why this happens I am not sure. I re-organized the code
336 a bit because it didn't seem to be as robust as it could, but I cannot
338 - As a consequence of the above, I have implemented a new bsock timer that
339 can be started and stopped. This is based on Nic Bellamy's new watchdog
340 code. The timer is set with start_bsock_timer(bsock, timeout); If the
341 timeout expires, the bsock will be marked as timed_out and interrupted
342 with a pthread_kill() on the current thread.
343 - Added 5 minute bsock timers to all the opening Hello/authentication
344 exchanges between the various daemons.
346 - New spec file from Scott.
347 - New patch file from Scott for create_sqlite_database
348 - Fix crash in run command if invalid pool specified on the command line
349 and then the user cancels the Pool prompt.
350 - Separate Console and ConsoleFont resources in gnome2 conf files.
351 - Remove possibly bad ASSERTs from bnet.c
352 - Remove open() of device in dircmd.c, which fails on FreeBSD with
353 an autoloader -- thanks to Jesse Guardiani for this fix.
355 - Remove all "hostname -s" from configure except for RedHat. Use uname -n instead.
356 - Implement SetIP command.
357 - Implement Close On Poll in Device resource on SD.
358 - Implement Full, Inc, and Diff Pools.
359 - Implement Access control lists for Consoles.
361 - Define default working_dir as /var/bacula/working.
362 - Implement setip console command to set new IP address for a Client.
364 - Implement maximum network buffer size directives.
365 - Good first cut at access control lists for the console.
366 - Optimize restore to select only latest Differential backup after
367 the Full, and then all following Incremental backups. Previously
368 everything after Full was selected.
370 - Organize kernstodo a bit (more to be done).
371 - Add client IP address to BSOCK structure.
372 - Use bit fields where appropriate in BSOCK structure.
373 - Pass UAContext to ua authenticate in Director, and make it
374 set the appropriate console (or NULL for none).
375 - Tweak restore "run" argument handling and add "files" keyword.
376 - Add device name or Volume name to some SD messages.
378 - First cut multiple consoles.
381 - Add quit command to restore tree handler.
382 - Make restore tree handler remember if a hard link is present, and
383 in doing a mark, only get database entry if there is a hard link.
384 mark commands thus run at least 2 orders of magnitude faster.
385 - Add files=xxx field to run command submitted for restore.
386 - Add yes to restore run command if either yes or run is command line
388 - Make "yes" on command line argument skip prompt for modification of
390 - Add markdir and unmarkdir -- both affect only the directory in
391 question and do not do a recursive descent.
392 - Make tree command automatically mark all higher level directories to
393 be restored when a directory or a file is selected. Such directories
394 are indicated by preceding the name with a + to indicate that only
395 the directory entry is selected and not the whole directory tree.
396 - Modify a few tree commands to walk through all arguments rather than
397 just taking the first one.
399 - Update copyright date on changed files.
400 - Make mark command in restore tree run *much* faster by accessing database only
401 if the file actually is hard linked -- determined at time tree it built by
402 keeping a has_link bit in the tree entry.
404 - Modify findlib/makepath.c to create all parent directories with full permissions.
405 This should solve the access problems on restoring files on Win32 systems.
406 - Modify restore to report **** Restore Error **** if any error are found.
407 I.e. a file could not be created.
408 - Change a few errors into warnings -- e.g. if permissions could not be set, but
409 the file is actually restored.
411 - Replace bsd_queue with dlist in lib/watchdog.c
412 - Add Date: header to bsmtp. Thanks to Meno Abels (abels) on SourceForge
414 - Remove ap==NULL check in src/lib/var.c as suggested by Christoph Barbian
415 because ap (va_list) is a struct on the Alpha, so the code does not
418 - Implement first cut of polling for a Volume. New Device directive
419 "Volume Poll Interval = xxx" where xxx is a time specification
420 (e.g. 5min). Default is off.
421 - Call pthread_cancel on SD msgchan only if the threadid is non-zero.
423 - Change RH autostart scripts to start in Dan's order.
425 - Correct calculation of week of month in scheduler and in scheduled
428 - Fix cancel of job waiting on mount to be a bit cleaner.
430 - Fix seg fault -- don't close db in db_open_database(). It must explicitly
433 - Allow purge of a single JobId from a Volume (code untested)
434 - Implement fix to keep SD from looping complaining about the wrong volume
435 at the end of a tape -- reported by Phil, and fix confirmed by him. I cannot
436 seem to reproduce the bug here.
437 - Clean up a few more strcpy()s.
439 - Fix configure.in FD User print per Lars.
441 - New bacula.spec.in from Scott. Nice!
442 - Make RunAfterJob non-fatal if it errs since the Job has really
443 already completed the save.
444 - Replace sprintf with bsnprintf in message.c
446 - Note, this change affects only the Win32 FD.
447 - Fixed Win32 FD crash due to missing argument in status command. It
448 always crashed if there was a job that had previously run. Thanks to
449 Christopher Hull for finding and diagnosing this problem.
451 - Fix SELECT as indicated by Dan in sql_get.c for returning Volume names.
452 - Fix last_jobs list crash for utility programs (btape, ...).
453 - Correct editing of FileSet name into SQL command.
454 - Allow calling watchdog stop without initialization for utility programs.
455 - Enhance btape test by attempting to forward space past the end of the tape.
456 - Detect CAP_FASTFSF in btape test as possible reason for failure.
457 - Attempt to prevent infinite loops in fsf_dev() if device not properly
459 - Attempt to get correct file number on tape after backspacing at EOM. The
460 correction should resolve differences in OS tape driver implementations.
461 - Add ctl-c detection to bconsole. When reading from tty, interrupts any
462 output from Bacula, when reading from a file, it terminates the reading
463 and returns possibly exiting if it is a batch job.
464 - Create devel_bacula.in script and make it configure itself. Very similar
465 to the new bacula.in.
466 - Modify bacula.in to have separate file locations for each daemon -- makes
467 it easier to make a new devel_bacula.in when there are changes.
468 - Remove old config files when rebuilding configure to avoid error msgs.
469 - Fix btape "test" to respect TWO EOF.
470 - Fix fsf_dev() to use system notion of file if it is valid after bsf_dev().
471 - Move btraceback.gdb to scripts directory on installl.
472 - Add new mandrake bacula.spec.in
474 - Find commonset of c_iflags that work with FreeBSD tcsetattr on terminals.
475 - Remove comments from string concatenation -- doesn't work on FreeBSD
477 - Moderately improve bpipe_close() errors. Must rethink status return.
478 - Eliminate some Emsgs in favor of Jmsgs.
480 - Add optional Pool keyword on restore command line. If specified, the pool
481 used will be restricted to the specified pool.
482 - "Finish" implementation of JobDefs.
483 - Fix directory for chmod of cats scripts.
485 - Implement foreach_res() #define and start replacing old code.
486 - Work some more on jobdefs -- more to be done.
487 - Implement bstrftime_nc() bstrftime with no century.
488 - Fix static console problem in gnome2 and gnome directories reported by Alan
490 - Add code to test for valid Resource Names. Permitted characters are now
491 alpha, numeric, colon, period, minus, underscore, space.
492 - Turnoff some unused code in timers.c
493 - Start adding code to dev.c to prevent infinite loops if fast forward space
494 file (MTFSF) is configured on but not properly supported by OS.
496 - Replace some M_ABORTs with M_ERROR
497 - Implement foreach_dlist() and foreach_htable() as suggested by Nic.
498 - Cleanup a few compile warnings.
499 - Made restore use the base FileSet name instead of modifications of the FileSet.
500 - Fix "restore" to always look at storage keyword and to use get_storage_resource()
501 - Fix seg fault in restore if no client found/specified.
502 - Made JobBytes print in 14 columns instead of 12 in status reports.
503 - Install static-gnome-console if built.
504 - Set max changer wait from 2 mins to 5 to avoid timout while tapes load.
506 - Add additional error messages to bsmtp.
507 - Major cleanup of jcr locking/use_count code. Lots of fixes a bit everywhere.
508 This risks to be a bit unstable for a bit, but should fix the crashes
511 - Merge Nic Bellamy's watchdog code.
513 - Deleted Drive from Media record.
514 - Added VolReadTime and VolWriteTime. They are passed back and forth,
515 but the SD does not yet set them.
516 - Moved the 3 copies of list_dashes() and list_results() in cats to
517 sql.c. Hopefully this can remain common code.
519 - Merged Dan's changes with mine for detecting and configuring
521 - Worked on making regression script configurable. While Dan added
522 multiple database support.
524 - Add skeleton SuSe platform files and configure support.
526 - Merge code from Laptop into main development directory.
527 - Merge my changes with Dan's (conflicts only in autoconf).
529 - Turn off fast block rejection.
530 - Do not read tape lable back into block as it causes race condition
531 with multiple simultaneous jobs.
533 - Add conio.c but not yet called by console.
534 - Make code in msgchan that does "use Device" use new more standard
535 pm_strcpy() routines.
536 - Use pm_strcpy() in ua_input in place of bstrcpy().
537 - Make realloc'ing for bvsnprintf() add 1/2 current length to buffer to
539 - In ua_output.c in bsendmsg() if msg buffer is realloced, be sure to
540 reset the new address in the socket packet. Fixes seg fault.
542 - Mark media created by bscan as Archive so they will not be written to.
543 - Add additional columns to catalog, fix problems with update ...
544 - Lots of doc updates.
545 - Implement list (dlist class) of last job statistics. Keep last 10.
546 - Implement one line listing for "Terminated Jobs" and "Running Jobs" much
547 like the current "Scheduled Jobs" list.
548 - Remove "restoration" and replace it with "to be restored".
549 - Add device name to some SD messages.
551 - Some how, the recursive error messages in bnet.c (calling Jmsg) are
552 causing the FD to crash (possibly other daemons as well).
554 - Sort FileSet selection list by CreateTime.
555 - Add "lsmark", and "estimate" to tree routines.
556 - Doing a mark or unmark now prints how many entries were changed.
557 - Add command argument parsing to btape.c
558 - Enhance EOT to print file:block on message.
559 - Add repeat counts on btape bsf, fsf, bsr, fsr, and weof commands.
560 - Enhance btape's fill command to be much clearer and more reliable.
561 - Add state file to btape so that unfill command can be done any time
562 after a fill command.
563 - Use reposition_dev() to position for read back of last block.
565 - Zap InChanger flag only if setting Slot to non-zero.
566 - Added new SD directive TwoEOF, default off, that tells Bacula whether
567 to write one or two EOFs for EOM. For the OnStream driver it must
568 be off, otherwise an empty file will be created.
569 - Cleaned up the btape "fill" command to compare the last block written
570 and read rather than just printing them.
572 - Implement btape test for autochanger.
573 - Implement btape test for Fast Forward Space File.
574 - Moved up to cygwin 1.5.5-1
575 - Implemented Fast Forward Space File
577 - Add support for selecting volumes from InChanger list first, then
578 selecting from all available volumes.
579 - Ensure that Volumes are selected from oldest LastWritten data/time.
580 - A couple of bug fixes ensuring the proper ordering of volumes.
582 - Return oldest LastWritten for find_next_volume.
583 - Remove ASSERT from stored/acquire.c that could trip when it shouldn't.
584 - Enhance SD status if debug_level > 1 to show details of dev status.
586 - Create update_bacula_tables, ... scripts and modify configure and Makefiles
587 - Eliminate is_num() and use is_an_integer().
588 - Add user slot selection code "slots=1,2-3,5,10, ..."
589 - Start daemons at level 90 rather than 20 so that MySQL will already
591 - Write alter_mysql_tables.in and alter_sqlite_tables.in
592 - Add Drive and InChanger to Media record.
593 - Update database level to 7.
594 - Add db_make_inchanger_unique() and call it when creating and updating
596 - Add Drive and InChanger to database code for Media record.
597 - Allow changing InChanger flag in update command.
598 - First cut at allowing the user to specify slots for updating autochanger.
599 - Add scan to "update slots scan".
600 - Add slots=1,3... to "update slots" and to "update barcodes slots=1,3".
601 - Add command in SD to readlabel.
602 - Add new Win32 cygwin 1.5.5 binaries (cygwin1.dll, chown.exe, ...)
604 - In the bacula start/stop script, ordered the stop: FD SD Dir to
605 give the SD the best chances of updating the catalog before dying.
606 - Add Drive and InChanger to MEDIA_DBR record and to Volume update
608 - Reorganize the Volume info update from SD so that the Dir sends back the
609 current information in case the Volume status has changed by expiring.
610 The DIR-SD protocol is not backward compatible (must update).
611 - Fixed the signal handler to pass the signal to the exit_handler()
612 previously it passed 1.
613 - Modified SD so that on normal shutdown, it walks through all jcrs and
614 cancels them so that the Volume status will be updated in the catalog.
615 - Found and fixed a bug where ST_LABEL was not set in append mode
616 (when a different tape was accepted other than the original one
618 - Update the catalog Volume info after dev->file is incremented rather
619 than waiting for end of job.
621 - Fix timezone problem by passing UTC time to FD.
622 - Fix clock scew between DIR and FD.
623 - Change getdomainname() prototype for Darwin.
624 - Add gethost_strerror() to create correct error message for
626 - After doing a kill() of a stalled connection in watchdog, turn off
627 the timer to prevent an infinite loop.
628 - Allow Bacula to rewrite the label on a disk volume.
629 - Correct usage report printed by bsmtp.
631 - Complete changing references to bsmtp from smtp.
632 - Add L_NONE for Admin and Restore jobs and update level_to_str()
633 - Fix segfault from double free of RestoreBootstrap in job.c
635 - Change console to bconsole
636 - Change console.conf to bconsole.conf
637 - Change smtp to bsmtp
638 - Implement .bconsolerc
639 - Check if volume has expired when doing an update media for the SD
641 - Implement new code that assures that a non-zero Slot is unique within
642 a given Pool. When setting a non-zero Slot, the Slot of all other
643 Volumes with the same Slot is set to zero.
645 - Fix bug reported by Lars where an incorrect Volume name was printed
646 by the "status dir" command.
648 - Pretty up a few error messages printed by smtp.
649 - Make btime_t int64_t so that one can do arithmetic.
650 - Implement since as utime (64 bit UTC).
651 - Compute clock diff between Dir and FD, and adjust since time.
652 - Apply SQL fix from Nic Bellamy (thanks).
653 - Apply John's zlib #ifdefing fix.
655 - Add Dan's with-sd-user, ... to configure.in.
656 - Add Dan's userid and group modifications to bacula.in
657 - Lots of documentation updates.
658 - Make console print "Enter a period to cancel a command" when starting.
659 - Fix the "list nextvol" command so that it doesn't try to close the
660 database twice, giving a segfault.
661 - Fix (hopefully) to dircmd.c so that a mount request does a pthread_cond_signal.
662 There was one path were the signal was not sent. This should fix the bug
663 that requires you to do two "mount" commands to free a job waiting on a mount.
664 - Make dir_ask_sysop_to_mount_next_volume() return immediately if a slot is
666 - Correct some of the messages in testfind.c (pointed out by Dan -- thanks).
667 - Alias fd to client, sd to storage.
668 - Changed order of Console commands so that short commands such as q (quit)
671 Changes submitted this submission: