1 Technical notes on version 1.28 02Jan02
6 - Implemented Bare Metal Recovery for Linux and manual procedures for Solaris
7 - Now using only a single technotes file kes-1.28 and will add to
8 it as the development goes on.
9 - Wrote a general purpose bi-directional pipe command. This replaces
10 previous use of pipes as well as the run_program previously used.
11 - Make BSRs stop if no more matches are possible.
12 - Allow unliminted number of devices in Storage daemon.
13 - Allow connections to Storage daemon before all devices are initialized.
14 - Better documentation (and btape test command) on using fixed block
17 Changes submitted this submission:
19 - Thanks to James MacLean for finding two errors in the bacula-dir.conf
20 file as well as discovering that the filename quoting was not working
21 for the database. This necessitated version 1.28a and 1.28b.
23 - Add cygreadline5.dll to Win32 release -- needed for console
25 - Add scripts make_catalog_backup and delete_catalog_backup that makes and
26 deletes an ASCII copy of the catalog for backup. An example of how
27 to use it is in the <bacula-src/src/dird/bacula-dir.conf file.
28 - Made a nicer column oriented listing of scheduled jobs for "status dir".
30 - Added backup/restore of raw partitions.
31 - Corrected restoration of files in root directory (problem with
32 splitting path from file).
34 - Finally decided to cleanup handling of splitting path and filenames
35 in the cats directory. Now the code is in one place sql.c and it
36 is done using Pool memory, so there are no length restrictions.
38 - Add start of Solaris bare metal recovery
39 - Add Site Visit usage statistics to Web page
40 - Got Bacula listed on www.backupcentral.com
42 - Retest bare metal recovery on Linux 2 times with verify
43 - Cleanup printout of verify differences using proper casting to
44 handle shorts and long longs.
46 - Added --enable-client-only to ./configure
47 - Modified --enable-static-sd to work better and documented it.
48 - Fixed Restore options (never,ifnewer, ...). They now work.
49 - Moved the stored.c Resource lock into the allocation thread so
50 that the same thread sets/clears it. This created a problem on
52 - Set close_bpipe() status to zero for FreeBSD because it does not
53 seem to return good child termination status codes.
55 - Added more rescue documentation.
56 - Did a spell check of the Bacula doc.
57 - Modified bscan to use the working directory as specified in the
58 configuration file as the default.
60 - Fixed an important bug reported by George Motter that caused only
61 the last option on an Include record to be used (all previous options
64 - Chase down some inconsistencies in creating Media records from
65 the Pool defaults, and in updating/creating the Pool from the
66 resource. Also fixed the cats DB routines to include all
67 fileds (VolUseDuration was missing for example).
69 - Added building static versions of daemon static-bacula-dir, ...
70 - Fine tuned the rescue (bare metal) code including support for grub.
71 - Added skeleton freebsd rescue
72 - Corrected SQL syntax error in autoprune code (JobType => Type).
73 - Added error messages for SQL errors in autopruning.
75 - Documented Bare Metal Recovery
76 - Create new "rescue" directory containg the Bare Metal Recovery code.
77 - Fiddle with SQL a bit for pruning as apparently the last InitCatalog
78 was pruned after the expiration date eventhough it was the ONLY copy!
79 I'm not sure this is fixed yet.
81 - Allow Director to pass a NUL where string to FD (fix in FD).
82 - Fix installation mv of query.sql.
83 - Make sure btraceback.gdb is not wiped on "make distclean"
84 - Corrected a bug in mod of replace options pointed out by Dave Anderson.
86 - Started adding FileOptions ...
87 - Fixed and incorrect print out of the number of files restored (Jarif).
88 - Finally fixed EndBlock (and file address for Files) in catalog!
89 - Added hostname to tape header as always planned.
90 - Removed Level code (will not implement unless strong demand exists).
91 - Tweaked bscan to print number of errors ignored before first SOS.
92 - Enhanced btape "fill" to permit using one tape and to dump last
93 block before writing and upon read back.
94 - Make fsf_dev() return 0 on fail and 1 on success.
95 - Use new db_get_job_volume_parameters() to enhance Write Bootstrap to
96 contain more info (start/end file/block, file indexes).
97 - Added --enable-static-fd, sd, and dir to configuration to enable making
98 static versions of the daemons.
101 - The btape test program was indicating errors on Adrian's machine
102 using the ATAPI (ide-scsi) tape drive. It turns out that this
103 is a fixed block driver as a consequence, Bacula must be setup
104 to write fixed blocks. btape was not always using the fixed
105 blocks defined in the Bacula config, so that has been updated.
106 It now works fine. A lot of tips added to the Bacula test command
107 to help guide the user.
108 - Documentation of the above significantly improved in the manual.
110 - Added code in watchdog to permit setting and clearing child timers. If
111 the timer expires, the child process is killed.
112 - Modified restore to handle differential jobs.
113 - Added a new test to the btape "test" command
115 - More documentation of new features (week position in scheduler, bsr).
116 - Re-read last block written on full tape to verify it.
117 - Fix segmentation fault with btape fill command due to missing FileSet MD5.
120 - Created better SQL input editing routines str_to_int64 and str_to_uint64()
121 - Pull Client from database in Console restore command.
122 - Create a Unique list of Volumes to be mounted (previously had repeats).
123 - Made many of the SQL searches better by using the ClientId rather than the name
124 in the restore Console command.
125 - Modified reading of a tape to include the VolFile info. Once the
126 tape is past the specified file, reading stops. The BSR now includes
127 both the VolFile and VolBlock. Currently VolBlock is not used.
128 - Handle multiple volumes better by creating a real volume list with all
130 - Display "At prompt waiting for input" in gnome console when at subcommand
132 - Broke ascii to internal and internal to string editing routines out into
136 - Added a readme and an afs-bacula script to the examples directory
137 that permits Bacula to backup an AFS filesystem. Thanks to
138 Lucas Mingarro for the submission.
139 - Added A Sun-desktop autoloader script and Device definition to the
140 examples/devices subdirectory. Thanks to Lucas Mingarro for the
142 - If the WriteBootStrap fails, the job will now be marked in error.
143 - Added a week position to the scheduler syntax that allows you to
144 specify 1st, 2nd, 3rd, 4th, or 4th, or first, ... fifth as a week
145 position specification in front of a day. So if you say
149 the scheduler will start only on the first sunday of the month. The
150 day specification can also be a day range e.g. sun-fri.
151 This code is untested.
152 - Implemented bpipe.h and bpipe.c in src/lib, which defines a bi-directional
153 pipe. This allows executing other programs and sending them information
154 as well as getting info from them.
155 - Replaced the previous pipe usage with bpipes in RunBeforeJob and
157 - The mail program now uses bpipes rather than pipes, which means that any
158 error output will appear in the job output (truly bi-directional).
159 - Modified BSR to handle counts and to stop when no more matches are possible.
161 - Improved error messages in smtp.