]> git.sur5r.net Git - bacula/bacula/blob - bacula/technotes-2.3
More tweaks to the mount volume routines to get everything
[bacula/bacula] / bacula / technotes-2.3
1               Technical notes on version 2.3
2
3 General:
4 28Sep07
5 kes  More tweaks to the mount volume routines to get everything
6      right. Changed variable name from find to have_vol, which is
7      much easier to understand.
8 kes  Enhance btimer debug code.
9 27Sep07 
10 kes  Fix FD->SD authorization failure, which was due to spurious
11      wakeups from a pthread_cond_timedwait().  Simply check the
12      predicate before continuing.  This fixes bug #953
13 kes  Add const char where needed (more to do). Remove temp debug code.
14 26Sep07
15 kes  Setup SQLite busy handler before doing queries.
16 kes  Don't overwrite error message in check_tables_version.
17 kes  Unlock batch insert tables with same calls used elsewhere.
18 kes  Allow starting 59 jobs a second.
19 kes  Make SD session key more random.
20 kes  Add retry for SQLite opening db if it fails. 
21 kes  Suppress extra error messages during batch insert failure.
22 kes  Add jcr to timer packets so if killed message can be sent to job.
23 kes  Add JobId to all Dmsg() output.
24 kes  Put some FD auth code on dbglvl rather than fixed.
25 kes  Return insert attributes error message in db msg buffer to avoid
26      false error messages.
27 kes  Separate batch init error messages.
28 kes  Make SD code that contructs attribute insert check string lengths
29      more carefully.
30 kes  If Dir gets an error during inserting attributes, cancel SD.  
31      This reduces unnecessary error messages.
32 24Sep07 
33 kes  Correct search boolean for getting Volume info
34 ebl  Cleanup batch code.
35 kes  Back out one small change to the reservation system (reserving a volume).
36 kes  Rework how a Volume is mounted. It is now much more intelligent and
37      will always attempt to use any mounted volume if possible and reduces
38      calls to the Director asking about volumes.
39 23Sep07 
40 kes  Turn off some code when batch insert not enabled.
41 kes  Edit FD name in connect error messages.
42 kes  Rework the reservation system to take into account that the Director
43      might give us a Volume that is different from the current one being
44      used, and to ensure that we don't exceed Maximum Volume Jobs.
45      This fixes (mostly) bug #947 '  Maximum Volume Jobs = 1 produces 
46      fatal error with multiple jobs running'
47 kes  Add more debug code in reservation system.
48 kes  Implement maxvol-test to check bug #947.
49 22Sep07 
50 kes  Add code to handle tray monitor separated from Win32 FD.
51 kes  Fix display of Win32 tray monitor after reboot. Fixes bug #952.
52 20Sep07
53 kes  Add missed return in fixing verify bug -- trunk only.
54 ebl  Fix a command parser issue causing a director segfault.
55 kes  Fix ANSI tape labeling. Fix restoring ANSI labeled Volumes. 
56      This fixes bug #954.
57 kes  Increase the max block size to 4MB fixes bug #957.
58 kes  ERABT if user sets min block size > max block size.  Fixes bug #956.
59 kes  Apply 2.2.4-poll-mount fix, that resolves bug #908 where a tape
60      is not properly mounted (recognized) during a poll.
61 kes  Apply 2.2.4-verify patch that resolves bug #958.  A Verify catalog
62      Job that has differences reports Verify OK.
63 ebl  Fixes #955 bug seg fault in Dir introduced  with regexwhere relocation.
64 17Sep07
65 ebl  Add an option to operate on all pools with update vol parameters.
66      This complete the project 20. Patch from Nigel Stepp.
67 ebl  Add history support to bconsole when using readline.
68      Using Ctrl-D to exit doesn't update .bconsole_history
69 kes  Modify new volume algorithm to use max MediaId for generating next
70      volume number rather than the count of Volumes. This should essentially
71      eliminate the failure rate if some volumes were deleted. Bug #921.
72 kes  Begin implemention of Optimize Job Scheduling.
73 kes  Implement restore callback that Dirk and I agreed on for bat 
74      restore. This fixes bug #928. Restore of backup of zero files fails.
75 kes  Fix SQL Catalog logging which broke with new db_escape_string 
76      calling sequence.
77 14Sep07
78 kes  Fix bacula_cats.def for new db_escape_string().
79 kes  Increase size of name string when FD making connection to SD.
80      May fix bug #953. FD->SD connection failure.
81 13Sep07
82 kes  Add code to help Dan debug 2drive-incremental-2disk test.
83 kes  Add code to try to fix bug #908.
84 kes  Add waits to multiple exit detection code to try to force pid
85      file to always be deleted.
86 kes  Restore good dev.tar.gz to rescue set appropriate binary property.
87      This fixes bug #950.
88 kes  Fix seg fault in error exit of acquire_for_read after unsuccessfully
89      trying to switch drives by checking for blocking before unblocking.
90      Fixes bug #906.
91 kes  Cancel storage daemon in all cases where FD reports error. This
92      should fix virtually all cases of bug #920.
93 kes  Fix db_escape_string() for MySQL which did not compile.
94 12Sep07
95 kes  Fix error message that was clobbered when Dir tells SD it does not
96      have write permission on Volume.  This should fix a minor point
97      in bug #942, but not the main problem.
98 kes  Add code to cancel job in SD if FD connection fails. This should
99      fix bug #920.
100 kes  Add code in FD exit to prevent loops and a crash on FreeBSD.
101 dvl  Pass jcr and db into db_escape_string() to enable better escaping
102      of strings
103 kes  Fix migration code to get correct Volume name with multiple volumes 
104      by skipping |.  Fixes bug #936.
105 kes  Implement patch supplied by Landon to fix bug #944 where using
106      TLS with bconsole uses 99+% of the CPU.
107 kes  Note, you need GTK >= 2.10 to be able to link the Tray Monitor
108      program.
109 kes  Move patches into patches directory.
110 11Sep07 
111 ebl  Fix bug #946 about "bacula-dir -t" which doesn't works
112      as expected.
113 09Sep07 
114 ebl  Using "m" in bconsole will show messages like before,
115      and not memory usage.
116 kes  Fix bug #935, and probably also bug #903 where files were not
117      restored. MediaId was not properly set in JobMedia record after
118      a Volume change.
119 08Sep07
120 kes  Suppress chown and chmod error messages if the FD is not running
121      as root.
122 07Sep07
123 kes  Apply Martin Simmons' patch that should turn off the new API usage
124      when batch insert is turned off allowing building on older
125      PostgreSQLs.
126 kes  Add ./configure search in qwt-qt4 for qwt package
127 05Sep07
128 kes  Bacula is now free of 3rd party GPL copyrighted code!
129 kes  Remove idcache.c 
130 kes  Add guid_to_name.c/h which replace idcache.
131 kes  Remove enh_fnmatch.c.  Make code that references it use fnmatch.c
132 04Sep07
133 ebl  Detect if new PosgreSQL batch insert API is present.
134 kes  Correct incorrect mempool call causing Director crash. Occurs on
135      systems without va_copy().
136 sb   Update spec files for 2.2.1 release
137 03Sep07
138 kes  Fix memory pool call in ua_output.c. bug #934.
139 kes  Replace fnmatch.c and fnmatch.h by modified BSD versions.
140      Add test program to fnmatch.c
141 02Sep07
142 kes  Integrate patch to README.vc8 from 
143      Hederer Jean-Sébastien <hedererjs@asperience.fr, had to manually
144      edit it to get it into Unix patch format.
145 kes  Implement mkpath.c to replace old FSF makepath.c
146 01Sep07
147 kes  Implement savecwd.h and savecwd.c. Remove FSF versions.
148
149 Release Version 2.2.1
150 30Aug07
151 kes  Update POTFILES.in
152 kes  Cleanup a few underquoted AC_DEFUNs in configure   
153 kes  Apply patch from Martin Simmons that adds a test for va_copy to
154      ./configure
155 29Aug07
156 kes  Fix bug #921 by increasing the number of tries to create a new volume
157      from 11 to 100.
158 kes  Rework bmsg in ua_output to use va_copy() so that bvsnprintf()
159      can be called multiple times.  Implement a version for machines
160      without va_copy() that gets a big buffer.
161 25Aug07
162 kes  Integrate more portable zone offset code into bsmtp.c
163      Submitted by Attila Fülöp.
164 24Aug07
165 kes  Fix bad SD->FD return status reported by 
166      (James Harper) <james.harper@bendigoit.com.au>
167 ebl  Fix a bug in read_close_session which return random status
168      thanks to James Harper
169 23Aug07
170 kes  Fix (hopefully) bug #930 by doing a db_escape_string() on file  
171      and directory names during restore of single file/directories.
172 kes  Add sanity checks to .sql command when string is empty. Hopefully
173      that will resolve Dirks Director crash.
174 22Aug07 
175 kes  Apply patch submitted by Martin Simmons that corrects a seg fault
176      in the bsmtp chat subroutine when debug is >= 10.
177 21Aug07
178 kes  Fix Director crash when running bat SQL queries.
179 kes  Add David's notes on Item 8: Copy pools.
180 18Aug07
181 kes  Rework projects file to be current and ready for a vote.
182 kes  Enhance lex scanner error message.
183 17Aug07
184 kes  Tweak LICENSE file to mention BSD code.
185 kes  Fix bat.pro.in so that it includes the OpenSSL libraries only
186      if specified on the ./configure.
187 kes  Add first (not yet tested) cut of bcomm to the qt-console directory.
188      This class is intended to allow us to open a second bsock to the
189      Director while in the restore subdialog.  
190 16Aug07
191 kes  Fix configure to create bat Makefile before creating dependencies.
192 kes  Eliminate the egg files from the tray-monitor. Use gtk calls.
193 kes  Add a tooltip to the tray monitor.
194 dvl  Set the Director's PID file before dropping privs. This fixes
195      bug #923.
196 15Aug07
197 kes  Update AUTHORs file
198 kes  Increase the default max concurrent jobs to 20 in FD and SD to
199      correspond with the default .conf files.
200 kes  Rewrite the Win32 service routines.  This eliminates the 3 copies
201      some different, of the same file created by RN when porting the 
202      Win32 SD and Dir.
203 kes  Rearrange some of the Win32 directories and the placement of the files
204      in them.
205 kes  Set DEVELOPER flag in version.h
206
207 ========================================================================
208 Release Version 2.2.0
209 09Aug07
210 kes  Apply a second doc patch from Marc.
211 kes  Apply a doc patch from Marc Schiffbauer <marc@schiffbauer.net> that
212      improves the tips section that discusses how to setup multiple
213      simultaneous jobs.
214 08Aug07
215 kes  Update bat README file.
216 kes  Apply patch from Allan Black <Allan.Black@btconnect.com> that     
217      corrects a typo in the Recycle status check in db_find_next_volume().
218      This will probably fix a number of annoying problems with multiple
219      Recycled volumes.
220 kes  Modify most of dird/msgchan.c to use bsock class calls rather than
221      bnet calls -- no functionality change.
222 07Aug07 
223 kes  Modify the Verify output to specify if files are missing on    
224      the Volume(s) or disk.  Fixes confusion in bug #916.
225 kes  When more than one Volume is read in a migration job, the last
226      Volume bytes reported are from the last read volume rather than
227      the last written volume. Fixed. This fixes bug #910.
228 kes  Fix display of Recycle flag after update volume=foo recycle=yes.
229      It previously printed New Recyle flag is: no. This fixes bug
230      #917.
231 06Aug07
232 kes  Correct seg fault when switching tape drives during restore.
233 kes  Commit uid_gid_name.c (replacement for idcache.c), but will not
234      be used until after 2.2.0 release.
235 04Aug07
236 kes  Remove fnmatch() in SD that permitted wild card specifications.
237      This fixes bug #914.
238 31Jul07
239 kes  Fix %g in filename returned by SQL for browse tree reported by
240      Dirk.
241 kes  Fix configure so that it puts config.out in the cwd rather than
242      in src/qt-console
243 kes  Attempt to fix the locking problem reported by Eric in bug #906.
244 kes  Make berrno class to leave errno unchanged after constructor call.
245 kes  Make bnet_server use the heap rather than the stack to allocate
246      its socket fd pointers to avoid a crash at termination. Problem
247      reported by Ryan Novosielski and bugs pointed out by Martin Simmons.
248 30Jul07 
249 kes  Create new depkgs and depkgs-qt separating the qwt out of depkgs
250      and putting it in depkgs-qt along with Qt4.3.
251 29Jul07
252 kes  Rework code in acquire.c that switches drives for reading when
253      the Media Type does not match. This should fix bug #906
254 28Jul07
255 ebl  Fix a director segfault during job setup #907
256 kes  Correct seg fault in postgresql when first operation returns no
257      rows.  Fixes Dirks File browser problem seg fault with bat.
258 25Jul07
259 kes  Apply patch from Felix Schwarz <Felix.Schwarz@web.de> that allows
260      building wxconsole on Fedora 7 with wxWidgets 2.8 (it works with
261      2.6 as well).
262 24Jul07 
263 kes  Implement PopUp YES/NO dialog for bat.
264 23Jul07
265 ebl  Fix a compilation bug when using #define BACL_WANT_NUMERIC_IDS
266 22Jul07
267 kes  Correct RunScript to terminate job in FD on failure.
268 kes  Change abort_on_error and AbortJobOnError to fail_on_error
269      and FailJobOnError in RunScripts.
270 kes  Minor tweaks of code formating in RunScripts, principally to
271      avoid depassing 80 columns.
272 21Jul07
273 kes  Eliminate one #ifdef Win32 in bsmtp
274 kes  Implement grow tool to grow a file for testing very large databases.
275 kes  Add big-vol-test to test Bacula seeking with > 5GB.
276 Release 2.1.28 beta
277 19Jul07
278 kes  Modify find_next_volume() to return all values in Media record.
279 kes  Ensure that we keep Recycle Pool when moving Scratch volumes.
280
281 Release 2.1.28 beta
282 18Jul07
283 kes  Update Release notes 
284 17Jul07
285 ebl  fix a bug in get_scratch_volume() report by Andreas Helmcke
286      Warning, in previous beta version, all media get from scratch keep their
287      old retention.
288 16Jul07
289 kes  Tweaked Win32 installer to remove temp conf files at uninstall time.
290      This should fix bug #842. Made a note to look at removing the temp
291      files at the end of the install.
292 kes  Add ability to mount and unmount a file device providing it is
293      marked as being removable and has the appropriate mount and unmount
294      commands defined in the Device resource. This fixes bug #830.
295 kes  When applying a storage override, release all previous storage
296      definitions rather than just prepending the new storage.
297      This should prevent a good deal of confusion.
298 14Jul07
299 kes  Implement ./configure search for qwt libraries.
300 13Jul07
301 kes  Disable posting the WM_CLOSE message in KillRunningCopy of the 
302      Win32 FD.  This should fix bug #893.
303 kes  Remove an unnecessary beep in Win32 init code.
304 kes  Update copyright dates in Win32 executable about boxes.
305 kes  Replace the FSF copyrighted getopt.c and getopt.h in the Win32
306      code with a BSD getopt.c and getopt.h.
307 kes  Remove sched.h from the Win32 compat directory -- not used.
308 kes  Remove the Exit menu item from the Win32 tray monitor. If you really
309      need to shut it down, do it through the services panel or the command
310      line.
311 kes  Remove some inappropriate Bacula FSFE copyrights.
312 ebl  Tweak status client=xxx to be more easy to parse (more like in 2.0.x)
313 kes  Fix regress config non-portable test as pointed out by
314      Florian Heigl <florian.heigl@gmail.com>
315 kes  Fix PSCMD for HP-UX in configure.in to have proper syntax.
316      as pointed out by Florian Heigl <florian.heigl@gmail.com>
317 12Jul07
318 kes  Fix missing rctx. prefixes on the Darwin code in src/filed/restore.c
319      Reported by Frank Sweetser.
320
321 Release 2.1.26 beta
322 12Jul07
323 kes  Fix client-only build.
324 kes  Integrate client-only fixes for bsys (initgroups) and conio from
325      Sergey Svishchev <svs@ropnet.ru> for the AIX platform.
326 kes  Make arguments to get_scratch_volume() in same order as other
327      such calls.
328 kes  Rework the prune_volumes() subroutine so that after purging and
329      no volume found in desired pool, it will check for a scratch 
330      volume. This prevents recycling the whole scratch pool.
331 kes  Add code to status storage to print boffset_t (largefile support).
332 11Jul07
333 kes  Move qwt (Graphics libarary for Qt4) to depkgs.
334 kes  You now need a --with-qwt=<dir> to be able to build bat.
335 kes  Update src/win32/cats/bacula_cats.def to include the new       
336      db_get_query_dbids() call on Win32.
337 07Jul07
338 kes  Correct a problem when selecting a scratch volume and moving
339      it to another pool that lost some columns.
340 kes  Tweak some code in ua_update.c to use POOL_MEM instead of POOLMEM.
341 kes  Enhance Autochanger error messages to include Volume and device name.
342 kes  Rework prune_volumes() code to take account of InChanger flag,
343      and to handle recycling volumes going to the Scratch pool and
344      current pool because the RecyclePool directive.
345 kes  Implement a better and more efficient db_get_query_dbids() to
346      handle creating and passing back a list of DBIds.
347
348 Release 2.1.24 beta
349 03Jul07
350 kes  Start work on new more efficient DBId subroutine. First use
351      will be for recycling volume to Scratch inchanger.
352 kes  Increase number of JobIds in pruning from 1000 to 10000. 
353      This to be replaced by above routine.
354 kes  Begin implementation of building Qt4 on Win32.
355 kes  Correct typo in fix I added for bad TLS shutdown.
356 kes  Pull 2.0.3 patches into patches directory.
357 kes  Update Release notes.  Include qt-console in line count.
358 kes  Update Projects file.
359 30Jun07
360 kes  Integrate patch from Sergey Svishchev <svs@ropnet.ru> that fixes 
361      bug in migration code where a job that spanned two volumes
362      was migrated twice.
363 29Jun07
364 kes  Implement new BST_DESPOOLING blocked state. Change from locking
365      during despooling in SD to blocking. This means that other threads
366      can work with the device structure, in particular the reservations
367      system while despooling.
368 28Jun07
369 kes  Fix return in reservation message queue that missed clearing
370      the jcr lock (implemented 26Jun07 below).
371 kes  Rename a number of dev methods to make locking function names
372      a bit clearer.
373 kes  Document locking in lock.c. Move lock structures to new file
374      lock.h.
375 26Jun07
376 kes  Move reservations message lock to lock jcr only this
377      fixes bug #861.
378 kes  Move main SD locking code into lock.c (new file).
379 kes  Update Win32 build to include lock.c
380
381 Release 2.1.22 beta
382 26Jun07
383 kes  Dirk committed the qwt library code for drawing graphs in bat.
384 kes  Tweak install of qwt so that it is integrated with ./configure.
385 25Jun07
386 kes  Fix HAVE_BATCH_INSERT to be HAVE_BATCH_FILE_INSERT, pointed
387      out by Eric (my typo).
388 ebl  Fix configure.in to get batch mode enable
389 kes  Return correct string from authenticate.cpp in bat when connecting
390      to Dir.
391 kes  Apply patch suggested by Frank Sweetser to fix bug #888 --     
392      spurious line drops when using TLS.  
393 kes  Do not file reparse points when restoring a file that already
394      exists -- Win32.
395 24Jun07
396 kes  Implement Windows reparse points -- similar to directories, but
397      we do not descend into it. This is a first cut. They seem to 
398      be backed up, but restore is not yet tested.
399 kes  Remove restore_blocking in tls code when shutting a socket to leave
400      it in blocking mode. Hopefully this will fix the encryption bug  
401      reported by Frank Sweetser.
402 kes  When opening a file for backup, tell the OS that we are going to
403      read it sequentially -- optimization.
404 kes  Change variable names in authenticate_director() to not conflict
405      with member names in bat. Caused great confusion with compiler,
406      but no warnings.
407 23Jun07
408 kes  Queue openssl error messages in case of comm problem.
409 kes  Do shutdown() call if socket terminated.
410 kes  Remove some duplicated code in tls.c
411 kes  Move more of the bsock member variables into private and access
412      them with methods.
413 kes  Add Frank Sweetser's tls-test to the regression suite.
414 22Jun07
415 kes  Add Swedish sv.po file
416 21Jun07
417 kes  Don't print clock skew message in FD if less than 3 seconds diff.
418 kes  Add a bit of VSS info to status client.
419 kes  Implement a first cut of Vista VSS, using Win2003 code.
420
421 Release: 2.1.20 beta
422 20Jun07
423 kes  Fixed bug #886 (multidrive autochanger: SD doesn't use drive with
424      loaded tape but uses first drive).
425 kes  Fixed bug #807 Restore encrypted backup failed on Windows 2003
426      This was indeed a Win32 issue.
427 19Jun07 
428 kes  Simplify search of autochanger for in-use Volume.  
429 kes  Fix exit condition of check for in-use volume.  kes Remove
430      inappropriate my_postgresql_free_result() in db_close()
431      routine.
432 kes  Fix bad return in FD when encryption signature not found.
433      Probably caused a crash.
434 kes  Inhibit missing encryption signature error messages for 
435      file types where no signature computed.
436 kes  Correct inverted check on autochanger in reservation system.
437 kes  Tweak debug code in autochanger reservation.
438 18Jun07
439 kes  Add some additional locking in the cats directory in subroutines
440      that modify packet variables called from batch insert.
441 kes  Rework how dcrs are allocated. new_dcr() can now be called
442      with an existing pointer, and it will simply clean it up.
443      This allows the reservation system to test various different
444      devices, and will permit easy device changes.
445 kes  A bunch of changes all over to handle new new_dcr() calling
446      sequence.
447 kes  Work more on the Volume management in the SD. Remember Volumes
448      for tape drives and for autochangers (even virtual disk changers).
449 kes  When looking at the Volume list to reserve a drive, handle 
450      autochanger names correctly by interating through the changer 
451      devices.  Also call the Director to see if a Volume is suitable
452      for the current job.
453 kes  Fix some bugs in bscan. Make sure all media records are written.
454      Make sure that valid JobMedia records are written for disk files.
455      Previously they were completely wrong.
456 kes  Move source tar files for depkgs-mingw32 to www.bacula.org so
457      that the URLs don't change and so that the developers will all
458      work off the same copy. Rebuild from scrach.
459 kes  Upgrade Win32 SQLite3 from 3.3.8 to 3.3.17.
460
461 Release: 2.1.18 beta
462 16Jun07
463 kes  Fix seg fault in FD from incorrect digest size. 
464 kes  Fix argument to non-OpenSSL crypto.c subroutine.      
465
466 Release: 2.1.16 beta
467 16Jun07
468 kes  Remove a few malloc()s from the encryption code.
469 kes  Use the class calls to bsock in filed/backup.c and restore.c in
470      place of the old bnet_xxx code.
471 kes  Implement code that does an on the fly calculation of the  
472      signing digest during restore of encrypted files.  It makes
473      a best guess at the algorithm, and if it is not correct, will
474      then revert to the old code which reads the file after it is
475      restored.
476 kes  Implement at least one missing crypto stream in stream_to_ascii()
477 kes  Apply patch from William <chowmeined@gmail.com> that fixes bug
478      #877 where a reload with bad syntax causes Dir to exit.
479
480 Cut: 2.1.14 beta (not released)
481 14Jun07
482 kes  Do not free a volume on a tape drive until another volume is
483      mounted and read, or the autochanger unloads the volume.
484      This should help the SD re-use volumes that are already mounted,
485      and should fix bug #886.
486 kes  Apply patch from user brettedgar that allows gnome2-console include
487      the OpenSSL libraries, and hence work with SSL.  Fixes bug #885.
488 kes  Apply patch from Lucien Weller that fixes day of week calculation
489      because of DST flag problem. Fixes bug #887.
490 10Jun07
491 kes  Move find_next_appendable_volume() to after acquiring a valid device
492      in reserve.c.  This fixes bug #864 -- confirmed by reporter.
493 09Jun07
494 kes  Unable to reproduce bug 872. However added additional testing for
495      integer.
496 kes  Bug #874 resolved by documenting SQLite limitations.
497 kes  Bug #882 resolved by documenting mtx-changer script for new drive code.
498 kes  Bug #881 resolved by removing typo in mtx-changer script.
499 kes  Made Frank Sweetser's wiki the official Bacula wiki with his
500      approval. Added a link to the wiki on the web page, and implemented
501      a backup from http://paramount.ind.wpi.edu                                          
502 08Jun07
503 kes  Fix update allfrompool to pass pool name.
504 07Jun07
505 kes  Convert to pure GPL v2 license.
506 kes  Fix sscanf problems reported by Peter Buschman that caused
507      a bus error on Solaris.
508 kes  Rework (simplify) the select prompt in bat.
509 kes  Move get_jobid_from_tid() into lib and create a 
510      get_jcr_from_tid().
511 kes  Use get_jcr_from_tid() to conver all tls Emsg() to Jmsg().  This
512      should definitely fix the problem of lost error messages in the
513      encryption code.
514 kes  Remove over zellous addition of FSFE copyright in a few eggxxx files.
515 kes  Eliminate tcpd.h from the project. Enclose the #include from the
516      library with extern C ...
517 kes  Add print of signal name when a signal is trapped.
518
519 Release: 2.1.12 beta
520 04Jun07
521 kes  Fix a seg fault in the PostgreSQL driver dereferencing a NULL pointer.
522 03Jun07
523 kes  Implement SQLITE3_INIT_QUERY in version.h that can do an initial
524      query for SQLite3. Use it to set PRAGMA synchronous = OFF. This
525      makes SQLit3 run 30 times faster, though a bit less safe.
526 kes  Implement --with-batch-insert in configure and detection of thread
527      safe libraries.  It is on by default, but turned off if no thread
528      safe library (e.g. SQLite 2) is available.
529 02Jun07
530 kes  Fix Bacula PostgreSQL buffer overruns.
531 kes  Do better checking for NULL results returned from PostgreSQL;
532      implement retry for failed queries; clear results buffer after
533      failed query. Hopefully this will correct the PostgreSQL failures.
534 01Jun07
535 kes  Implement algorithm to handle only one appendable volume with
536      Prefer Mounted Volumes = no.
537 kes  Fix a Bacula PostgreSQL bug dereferencing a NULL pointer      
538      returned from a query.
539 kes  Make volume lock recursive.
540 kes  Implement an additional volume reservation algorithm that
541      starts by considering all reserved volumes then uses the
542      old brute force algorithm of searching the resources to
543      find a suitable device.
544 kes  Add new reservations debug code and refine the old code.
545 kes  Update the win32/dll/bacula.defs file.
546 29May07
547 kes  Tweak reservations algorithm to permit a few more cases, i.e.
548      volume reserved, but on different drive, ...
549 kes  Enhance SD status to include Pool and Media Type for drive in a
550      more readable format (a bit longer). 
551 kes  Fix PostgreSQL double free.
552 28May07
553 kes  Minor refactoring of restore decryption code.
554 kes  Add code to smartall.c to detect double free of a buffer.
555 27May07
556 kes  Add < > around %r in from field on mail command of bacula-dir.conf.in
557      so that bsmtp will create a correct email address (mailbox only).
558 kes  Modify 'memory' command so that the buffers are listed as 'In use'
559      to avoid confusion with Orphaned buffers.
560 kes  I reworked the OpenSSL include/lib flags to be handled in     
561      the standard Bacula way, which should fix bug #863 concerning
562      non-standard OpenSSL libraries.
563 26May07
564 kes  Implement Help Browser window for bat.
565 kes  Fix reload bug that reset StorageId to zero.
566 25May07
567 kes  Fix TLS #ifdefing when TLS turned off.
568 kes  Ensure that when labelling a tape with Slot=0 that InChanger
569      is not set.
570 kes  Use DISTINCT to make MySQL and PostgreSQL uar_list_temp query        
571      the same.
572 kes  Add StartTime to final uar_sel_jobid_temp query so that we can
573      add DISTINCT (required by PostgreSQL).
574 kes  Implement BSOCK authenticate_director() method. Eventually will
575      authenicate all daemons.
576 kes  Move several more functions into the BSOCK class.
577 24May07
578 kes  Add code to tell the OS that we no longer need a cached
579      file that we were reading. In findlib/bfile.c.  Also,
580      only cache files that we are reading. Thanks to
581      Tobias Oetiker <tobi@oetiker.ch> for the idea.
582 kes  Tweak to bsmtp to eliminate compiler warnings on Win32.
583 kes  Implement script to automatically generate cats and dll .def
584      files for Win32 dll.
585 kes  Update README.mingw32 to include new .def file generation.
586 kes  Correct typo in UTF-8 error message as reported by:
587      jhernandez <julianhernandez@gmail.com>
588 kes  Add additional sm_check() code on debug level 1.
589 kes  Set default debug level to 1.
590 kes  Trap SIGABRT in attempt to get traceback.
591 23May07
592 kes  Reduce bat connect timeout from 30 to 15 seconds.
593 kes  More restructuring and implementing BSOCK class in place of
594      old bnet.c code.
595 kes  Remove a few unnecessary malloc() tests in crypto code.
596 kes  Turn off crypto calls for > 128 bits in crypto.c if HAVE_SHA2
597      not defined. Bug reported by Allan Black <Allan.Black@btconnect.com>
598 kes  Remove duplicate HAVE_CRYPTO definition in config.h.in
599 22May07
600 kes  Fix Verify InitCatalog mysql_escape_string() trashing memory.
601      Make buffer bigger.
602 kes  Fix Verify InitCatalog. The attributes were not pointing to the
603      correct saved location.
604 kes  Implement message callback so that GUI is sure to get all
605      daemon messages. Currently displayed in a dialog in bat.
606 kes  Ignore SIGUSR2 (Bacula timer) in bat.
607 kes  Apply regress patch from bug #859 to allow regress to work 
608      with Solaris compiler.
609 21May07
610 kes  Begin adding TLS support to bat.
611 kes  Apply UTF-8/16 patch from Yves Orton <demerphq@gmail.com> to
612      clean up lex.c and make it more readable.
613 20May07
614 kes  Move more bnet functions into the BSOCK class.
615 kes  Fix tray-monitor by not requiring a timer interval in bnet_connect()
616 kes  Complete change of berrno strerror() method to bstrerror() 
617
618 Release: 2.1.10 beta
619 18May07
620 kes  Cleanup incorrect email addresses in bsmtp.
621 kes  Make bat display initial messages rather than discard them.
622 16May07
623 kes  First cut of adding .mod to the run command.    
624 kes  Implement auto display of messages in bat.
625 kes  Enhanced preferences to allow all Bacula output to be
626      displayed in bat.
627 15May07
628 kes  Try to make bsmtp date routines more generic.
629 kes  Fixed bug #856 autochanger documentation.
630 kes  Rework bsmtp date editing for Win32. This fixes bug #854.
631 kes  Add new cats entry point so Win32 builds.
632 14May07 
633 kes  Attempt to fix bsmtp date editing on OSes without %z editing. 
634      Fixes bug #854.
635 kes  Do better checking for the MySQL 64 bit libraries looking for both
636      .a and .so libraries.
637 kes  Add a kludge for Ubuntu's non-standard locations for MySQL -- allow
638      /usr/include/mysql/mysql.h AND /usr/lib/... rather than /usr/lib/mysql/...
639 kes  Require the thread safe version of MySQL during configure. Thanks
640      to Andre Noll for pointing this out.
641 kes  Ensure that calls to find_jobids_from_mediaid_list() check count before
642      continuing in migration code.
643 kes  Apply implementation of tray-monitor font derived from gnome-console
644      submitted by Andreas Piesk <a.piesk@gmx.net>
645 13May07
646 kes  Eliminate important memory loss in SQLite
647 kes  Fixed the batch insert MySQL thread specific data that was not
648      being freed. See cats/mysql.c:db_thread_cleanup().
649 kes  Fix restore before command.
650 kes  Convert old hdr.name to name() in a few places.
651 kes  Implement update jobid command.
652 kes  Return all time_t dates in db_get_job_record()
653 kes  Stop watchdog in SD earlier.
654 kes  Put Pool just after Storage in please mount message.
655 kes  Fix pointer usage bugs in Verify InitCatalog pointed out by
656      Eric.
657 12May07
658 kes  Update the po files.
659 kes  Fix Verify InitCatalog by making it cache attributes.
660 11May07
661 kes  Change name bacula-bat to bat for man 1 page to correspond to
662      Makefile.
663 kes  Check for client and store NULL pointers in status command.  This
664      fixes bug #845.
665 kes  Fix non-ssl build so that it works (add JCR *jcr to crypto structures).
666 kes  Fix sign extended editing of %p.
667 kes  Clean out a little old #ifdefing in cats/mysql.c
668 10May07
669 kes  If time diff between DIR and FD is more than 600 seconds convert
670      INFO message to WARNING.
671 kes  Implement heap size display in status for all daemons.
672 kes  Attempt to fix MySQL db open memory loss (not successfull).
673 kes  Don't set SIGKILL and SIGSTOP neither can be trapped.
674 kes  Eliminate memory loss in MySQL (possibly other SQLs) during
675      Query. This looks like a MySQL but but by doing extra releases,
676      the memory goes away.  This should fix bug #847.
677 09May07 
678 kes  When backup fails, cancel SD before waiting for sd termination.
679 kes  If SD is waiting for FD to connect during cancel, wake up the 
680      thread.
681 kes  Fix fsf code so that errno is correctly reported.
682 kes  Apply migration patch (with changes) from Sergey Svishchev <svs@ropnet.ru>
683 08May07
684 kes  Make lack of Pool directive in Job an ERROR_TERM rather than FATAL
685      so that Bacula doesn't later stumble into a seg fault.
686 kes  Use the term Restore Client in the restore Job report.
687 kes  Merge patch from Sergey Svishchev <svs@ropnet.ru> that preserves 
688      the original job's FileSetId.
689 kes  Merge patch from Sergey Svishchev <svs@ropnet.ru> that implements
690      spooling in migration jobs.  Not yet tested.
691 kes  Merge patch from Jorj Bauer <jorj@seas.upenn.edu> that implements
692      reading conf file from a pipe.  However, do it with open_bpipe()
693      rather than popen.  Not yet tested.
694 07May07 
695 kes  Fix an ugly bug where the VolCatBytes were getting updated
696      during a restore.
697 kes  Implement bconsole memory command that prints current memory
698      usage, plus smartalloc dump.
699 kes  Clarify some error messages in backup, admin, and migrate.
700 kes  Shrink label dialog to smaller size.
701 kes  Invert Cancel OK buttons on restore to be OK Cancel.
702 kes  More strerror() to bstrerror() conversions.
703 06May07 
704 kes  Start implementing bstrerror() in place of strerror().
705 kes  Stripping path -- seems to work.
706 04May07
707 kes  Prevent door and port files from being restored (mostly
708      Solaris stuff).
709 kes  Free an unreleased buffer in compat code.
710 kes  Change console Job name from *Console* to -Console- to eliminate
711      Win32 filename problems.  Put Win32 path separator when creating
712      Console file.  This fixes bug #846.
713 kes  Change berrno::strerror() to berrno::bstrerror().  Not yet full
714      implemented.
715 kes  Pass jcr to crypt_sign_decode because it creates a new SIGNATURE
716      structure.
717 kes  Define b_errno_win32 on Linux to be zero so that it can be or'ed in
718      to force Win32 error message.
719 03May07
720 kes  First cut strip path. The data should be passed to the FD,
721      but nothing is done with it yet.
722 kes  Enhance the digest and signature routines in the crypto
723      library to accept a JCR and to use it to print error messages
724      so that they will go in the Job report rather than the daemon's
725      messages.
726 kes  Simplify some of the verify signature code.
727 kes  Simplify a few of the alternative returns in the signature 
728      code.
729 02May07
730 ebl  Use only POSIX regex instead of GNU regex in breg.c for
731      File relocation. It fix broken freebsd compilation.
732 kes  Convert all other Dir files to use new ua class message 
733      routines for bat.
734 kes  Tentative fix for missing digest signature in bug 807.
735 kes  Correct handle problem in new win32_ftruncate routine.
736 kes  Convert ua_purge.c and ua_update.c to use new ua class
737      message routines for bat.
738 29Apr07 
739 kes  Correct incorrect installation of LICENSE in Win32 installer.
740 kes  Display LICENSE at the beginning of the Win32 install.
741 kes  Attempt to correct the need for the png files to be installed 
742      for bat.
743 kes  Reapply my bat.conf install script in qt-console. I think I 
744      editted bat.pro instead of bat.pro.in and it was lost.
745 kes  Apply CentOS patches someone sent me. Checks for /var/run/subsys,
746      the /var/lock/subsys for subsysdir.  Also corrects typos in the
747      doc.
748 28Apr07
749 kes  First cut update job.
750 kes  Correct configure to include qmake of src/qt-console directory.
751 26Apr07
752 kes  Make restore job yes/mod/no print in one command so GUI works.
753 kes  First cut implementing backup and restore client.
754 kes  Correct editing in Verify output that caused a seg fault.
755 25Apr07
756 kes  Insure that bat.conf is not overwritten during installation.
757 kes  Fix important bug in db_sql_query() in mysql.c.  It was introduced
758      while I was implementing migration in March 2006 !
759 24Apr07
760 ebl  Cleanup file relocation, using char *RegexWhere instead of
761      char *where + bool where_use_regexp
762 kes  Update some manpages and add bat manpage.
763 kes  Make a first cut at converting bacula.spec.in for bwx-console
764      and bgnome-console.
765 kes  Apply patch from John Goerzen to add hostname as fourth argument
766      to make_catalog_backup script.
767 kes  Fix typos I introduced into bsmtp.c
768 kes  Make pm_strxxx() routines handle input of NULL pointer. This
769      is to protect from NULL pointers returned from SQL databases.
770 kes  Correct typo in bacula-sd manpage as pointed out by John Goerzen.
771 kes  Add more debug to FIFO code -- fix fifo regression test.
772 23Apr07
773 kes  Implement posix_fadvise in FD, and for reading spool files in SD.
774 kes  Add thread timer to bnet_connect() to break from OS if wait time
775      expires.
776 22Apr07
777 kes  Update Win32 build to include new files, new symbols, and    
778      renamed files.
779 kes  Implement socket level heartbeat (tcp_keepidle)
780 ebl  Commit File relocation patch
781 kes  Make bat have 'make install' target.
782 kes  Warn during install if old gnome-console binary found.
783 kes  Warn during install if old wx-console binary found.
784 kes  Add -8 option to bsmtp command line to add content type utf-8. 
785      Fixes bug #809. (Character coding problem in bsmtp).
786 kes  If < is found in target (from, to, cc) then do not enclose the
787      target in < >  in bsmtp. Fixes bug #772  (malformed address).
788 kes  When printing certain items in dbcheck, stop after 300000.
789      Fixes bug #822. (dbcheck loops).
790 kes  Incorrect status in Dir after waiting for mount with poll set.
791      Fixes bug #825.
792 21Apr07 
793 kes  Extend idea of Prefer Mounted Volumes to mean a volume about
794      to be mounted.
795 kes  Print waiting to reserve a device every 5 mins.           
796 20Apr07
797 kes  Don't call close_part in label.c if tape and relabel.
798 kes  Don't free volume if busy in close() -- should help with
799      bug 801.
800 ebl  Fix #824 RunScript bug (After script could be execute twice)
801      Now, Before Script can use RunsOnSuccess and RunsOnFailure options
802      By default (like before) RunsOnSuccess=true and RunsOnFailure=false
803      Add a regression script to test RunScript
804 19Apr07
805 kes  Correct usage of MTIOCLRERR ioctl for clearing persistant errors
806      on Solaris.
807 18Apr07
808 kes  The bgnome-console (gnome-console) and bwx-console (wx-console) are
809      deprecated. No additional bugs will be fixed, and they will be dropped
810      in a future release (probably 2.4.0).
811 kes  Change name of wx-console to bwx-console to make it more Bacula
812      unique.
813 kes  Change the name of gnome-console to bgnome-console to make it
814      more Bacula unique.
815 14Apr07
816 kes  Some time in March, a Feature Request with patch from Jorj Bauer
817      <jorj@seas.upenn.edu> was committed by Landon (with my approval).
818      It implements:
819      The ability for the director to validate a Client (FD) CN against
820      an arbitrary set of patterns rather than the hostname, with
821      A new 'TLS Allowed CN' set of directives which are implemented
822      in the Client resource.  Then pattern matching is used in place
823      of hostname matching against the Certificate's CN. As an example, we
824      have certificates which (a) use a local CA, and (b) have a CN of the
825      form client_123.
826 kes  Add new/changed entry points to Win32 build
827 kes  Create unaccepted-projects for projects that are not accepted.
828 kes  Simplify locking in the reservations system.
829 kes  Add more debug code in reservations.
830 kes  Make sure error condition on reserving a volume is handled correctly.
831 kes  Correct handling of volume_in_use.
832 kes  Correct handling of initializing a device.
833 kes  Move handling of broadcasting releasing a device into release_device().
834 kes  Correct attaching dcr to dev so that it is only done if device
835      is properly initiated.
836 12Apr07
837 kes  Locking debug level tweaks in SD.
838 kes  Tweak new Volume code.
839 11Apr07
840 kes  Add exec external-command [wait-seconds] to bconsole. This
841      executes the external-command.  Note! normally external-command
842      should be enclosed in double quotes.
843 kes  Turn the .die command on only if DEVELOPER is defined -- i.e.
844      it should normally be off in a production system.
845 10Apr07
846 kes  Implement die command for SD so that we can force it to dump.
847 kes  Implement SD lock debug code.
848 kes  Implement new algorithm for keeping Volume list in SD.  It
849      is now owned by the device.
850 04Apr07
851 kes  Implement new code for freeing in use volumes that should 
852      resolve if not all, some of the problems of multiple drive
853      tape conflicts described in bug 801.
854 03Apr07
855 kes  Fix gui/bacula-web/images files in svn.
856 kes  Turn on FreeBSD/OpenBSD code to set EOT model on tape.
857 02Apr07
858 ebl  Fix a bug in batch mode (in string escape)
859 kes  Correct migration prune SQL typo that crept in in a    
860      recent 2.1.x change.
861 01Apr07
862 kes  Move bnet_despool() into class in bsock.c
863 kes  Modify job report to include director name and Build OS.
864 kes  Move drop root privilege and check_catalog() before fork.
865 kes  Add update database scripts (version 9 to 10) to updatedb directory.
866 31Mar07
867 ebl  Check size and age of each file after its backup to see if
868      it has changed during backup, if 'checkfilechanges' is set.
869      The FD will do an extra check (stat(2)) after
870      each file backup. mtime, ctime and size are compared with
871      'before backup' information. If time or size mismatch, an
872      error message will be generated. You must upgrade FD to use it.
873 30Mar07
874 kes  Make database name and user configurable
875      --with-db-name=xxx --with-db-user=xxx
876 kes  Add back database type to message.c for debugging.
877 29Mar07
878 kes  Implement dir_sql() which issues an SQL query.
879 kes  Modify bat medialist to use dir_sql() and do some minor C++
880      formatting as well as eliminating a number of pointers, simplifing
881      the code.
882 28Mar07
883 kes  Fix some of the mtx-changer grep commands for tape label readers.
884 kes  Convert a number of bsendmsg into the appropriate send/warning/error
885      message class calls.
886 kes  Suppress the using database message in the .sql command.
887 kes  Correct an incorrect bnet_tls_client prototype -- patch from Martin.
888 27Mar07
889 kes  Add context menu for floating a window.
890 kes  Some minor cleanup and name changes in qt-console
891 kes  Add doing mt setblk 0 in Win32 mtx-changer.
892 kes  Apply Martin's bug fix to move definition of ENODATA for 
893      FreeBSD to bsock.c
894 ebl  Add a BUSY handler to sqlite to be able to use multi_db = 1 with
895      sqlite2 and sqlite3.
896 26Mar07
897 kes  More pruning cleanup.
898 kes  Turn on wait_for_drive by default in mtx-changer.
899 kes  Turn on Batch insert code by default as it now passes regression.
900 kes  Add ./configure --enable-bat to enable building of Bat.   
901      No install yet though.
902 25Mar07
903 kes  Implement a new .sql command for bat.
904 kes  Implement code to turn off pruning in obtaining the next volume.
905      Pruning is turned off for the status dir command, but turned on
906      for SD requests and for the list nextvolume command.
907 24Mar07
908 kes  Correct Qmsg() that was not updated correctly when committing a
909      previous change (probably the recent TLS patch).
910 23Mar07
911 kes  Write new subroutine is_volume_purged() that explicitly checks
912      if the Volume is purged, and if so marks it as such. This should
913      resolve problems reported about needing to mount twice to recycle
914      volumes.
915 kes  Rewrite pruning algorithm to do more work in the SQL engine, and
916      to pass a list of JobIds to be deleted to SQL.  Also, minimize the
917      amount of duplicated code.     
918 kes  Do volume pruning only for the Media Type desired (reduces pruning time
919      if multiple Media Types are in the same pool).
920 kes  Implement more detailed info in the Job report for the Bacula version
921      and architecture.
922 kes  Switch from POOLMEM to POOL_MEM (a real class) in ua_prune.c and
923      ua_purge.c.
924 ebl  Add bbatch tool to bench database and insert mode.
925      Fix sql quote stuff in batch mode
926      Fix sql stuff for mysql
927 22Mar07
928 kes  Correct problems with am/pm scheduling. Fixes bug #808.
929 kes  Implement new prunning code that prunes up to 1000 jobs at
930      the same time.  The same technique can be applied to a number
931      of other prune/purge subroutines.
932 kes  Add an insanity check when starting a new tape job to ensure
933      that the tape position has not been changed. If so fail the
934      job.
935 kes  Fix Win32 build for dlls to add the folllowing:
936      src/lib/bsock.c -- new file with new entry points
937      src/lib/dlist.c  -- new entry points
938      src/cats/sql_create.c -- new entry point
939      src/cats/sql_cmds.c -- new DATA item exported
940 21Mar07
941 ebl  batch mode cleanup bscan-test is ok now.
942 kes  Implement SD code to check length of disk volume before appending.
943 18Mar07
944 kes  Correct return status on db_batch... routines.
945 kes  Add call to db_write_batch_file_records() to migration code.
946 ebl  Fix AfterJob timing
947 kes  Move the checking of the database in initializion of the Director
948      to after we drop privileges.  This avoids the need for both root
949      and bacula access to the DB.
950 kes  Correct a misplaced variable definition in src/filed/backup.c
951 kes  Correct how the new batch insert db_create_attributes_record()
952      uses the arguments.  Caused a seg fault in bscan.
953 kes  Implement lock() and unlock() methods in DEVICE class.
954      Implement block() and set_block(xx) methods in DEVICE class.
955 kes  Modify bnet_connect() so that it uses time() to check for the
956      wait time expiring (on some OSes, some system calls may not
957      return immediately).
958 kes  Modify Verify to obtain the previous JobId when it is actually
959      running rather than at schedule time (as it was in 1.38.x).     
960 kes  Fix src/job.c to handle MaxWaitTime correctly.  This should
961      fix bug #802.
962 kes  When checking pid in pid file, continue running if the pid is
963      the same as ours. This occurs on IRIX after a system crash.
964      Fixes bug #797.
965 10Mar07
966 kes  Extend new GUI API.
967 kes  Make the ua structure a class, and implement send_msg(),
968      error_msg(), warning_msg(), and info_msg().
969 08Mar07
970 kes  Apply fix from for building wx-console on the Mac from
971      bug #798.
972 kes  Implement new select mechanism for GUI programs.
973 kes  Reorganize initialization of stackedWidgets in bat.
974 07Mar07
975 kes  Add updated nagios plugin supplied by Christian Masopust.
976 05Mar07
977 kes  More bat implementation.
978 kes  File migrate bug with Pool Occupancy using mediaid instead
979      of jobids.  Fixes bug #795.
980 kes  Fix orphaned buffers in filed backup and verify due to
981      crypto buffers not freed during errors.  Fixes bug #789.
982 kes  Extend new GUI api code to tree commands.
983 kes  Ensure that tree and dot commands check console ACLs.
984 kes  Permit marking directory with trailing slash.
985 kes  Allow 20 console connections (instead of only 10).
986 04Mar07
987 kes  Add smartctl call to bacula-sd.conf as an example of getting
988      tape alert info.
989 02Mar07
990 kes  Modify jobq.c to let simultaneous restore jobs run. This may 
991      cause them to fail if they cannot get a drive.
992 kes  Add Client Connect Wait to Storage daemon to permit users to
993      modify the time the SD waits for a FD connection.
994 29Feb07
995 kes  Correct virtual changer check which was backwards. This caused
996      volumes to be unloaded into slots already occupied.
997 28Feb07
998 kes  Apply Command ACL filter to JobId list in restore command.
999 kes  Correct typeo in var.c patch.
1000 27Feb07
1001 kes  Don't let Bacula prune File or Job records for the current Job.
1002 kes  Fix variable substitution pad + inc bug reported (with patch)
1003      in bug #791.
1004 26Feb07
1005 kes  Correct SQLite log table index as reported by Luca Berra.
1006 24Feb07
1007 ebl  fix fifo stuff, bacula tries to rewind the fifo... Thanks to Andreas
1008 22Feb07
1009 kes  Begin implementing new comm signals for API.
1010 kes  Fix a few places in lib/message.c where the open fd may 
1011      not be zeroed.
1012 kes  Continue implementing lib/bsock.c (real class).  Make jcr,
1013      who, host, and port private. There are new methods to access
1014      them for non-class use. This required touching a number of files.
1015 21Feb07
1016 kes  Add LANG=C to autoconf/randpass so it works with languages other
1017      than English.  Fixes bug #788.
1018 20Feb07
1019 ebl  Revert ClientRunBeforeJob to old position as in 1.38.X.
1020      This fixes bug #780
1021      You will not be able to generate Include/Exclude list any more.
1022      It will be fixed soon.
1023      If you want to use this, you can apply
1024      trunk/bacula/patches/testing/clientrunbeforejob_can_generate_include_exclude_list.patch
1025 19Feb07
1026 kes  Restore of sockets created false error messages because Bacula
1027      no longer restores sockets, but the code was still trying to
1028      set the attributes on a non-existent file. Reported by a user.
1029 ebl  finish RecyclePool feature
1030      Media will takes Pool.RecyclePool
1031      when moving from Scratch to a Pool or when user will do
1032      update volume=xxx frompool
1033      To use it, add RecyclePool = aPool to your Pool resource
1034         Pool {
1035                 Name = Default
1036                 RecyclePool = Scratch
1037                 ...
1038         }
1039      TODO: update manual
1040 kes  Expand new BSOCK class adding signal() and new BNET signals.
1041 kes  Begin enhancing the dot commands adding a new API function
1042      that returns more information and will make it easier
1043      to interface to the Director from a program.
1044 18Feb07
1045 kes  Make DEVICE fd private. Its new name is m_fd, and can be
1046      obtained with dev->fd() outside the class.  This is the
1047      first of many DEVICE members to be made private.
1048 kes  Implement Michael Renner's idea on having a virtual disk
1049      changer. I made some minor modifications (e.g. I did not
1050      implement the Virtual Changer directive, but simply set
1051      the Changer Command to an empty string.
1052 17Feb07
1053 kes  Implement a BSOCK send() method that writes the whole record
1054      in a single write() request rather than in two.
1055 ebl  add update volume=xxx recyclepool=yyyy
1056      volume takes recyclepool from pool when using update volume=xxx from pool
1057 16Feb07
1058 kes  Fix encryption deblocking bug, which caused some restored files
1059      to be truncated. This fixes bug #763.
1060 kes  Add FD event sequence order prepared by Eric -- for RunScripts.
1061 kes  Fix 12am/pm bug as reported in bug #782 -- scheduler problem.
1062 13Feb07
1063 kes  Apply Eric's ClientRunScriptAfter patch to 2.0 and 2.1.
1064 ebl  Use btime_t instead of uint64_t in media patch.
1065 11Feb07
1066 kes  Optimize the use of the database a bit in the Status dir command.
1067      Only open it when needed, ensure that if any previous database
1068      was opened, it is closed.
1069 10Feb07
1070 kes  Correct VolCatBytes bug from media patch.
1071 kes  Apply patch from bug #612 by Rudolf Cejka to speedup pruning
1072      in the case of orphaned records.
1073 kes  Modify dbcheck to handle orphaned JobMedia, Path, Filename,
1074      and File records in 300K chunks to be more efficient. This
1075      idea came from Juan Luis Frances (if I remember right).
1076 kes  Apply Eric's scratch patch that moves a purged Volume to
1077      the RecyclePool.  Question: how is RecyclePool set? what
1078      happens to the ScratchPool?
1079 kes  Apply Eric's media patch that collects read/write media
1080      times as well as byte counts.  This patch requires a
1081      simultaneous upgrade of the DIR and SD.  Note, there
1082      should be some way to turn off timing. I'm not sure
1083      times are in Bacula units.
1084 kes  Apply Eric's batch-insert patch.
1085 09Feb07
1086 kes  Update projects list.
1087 08Feb07
1088 kes  Implement Include/Exclude file lists in FD as dlists using
1089      the new dlistString class. This permits efficiently having
1090      large include/exclude lists and completes project Item 25.
1091 kes  Fix dird/ua_cmds.c so that a cancel command checks if the
1092      console is authorized to cancel the job.  This fixes bug 
1093      #767.
1094 kes  Modify SD so that the VolCatJobs medium record is updated
1095      at the beginning of a Job rather than the end.  This
1096      fixes bug #775 where exceeding MaxVolJobs caused jobs
1097      to fail.
1098 kes  Added a mutex around getting and setting Volume information
1099      so that multiple simultaneous jobs will single thread.
1100 07Feb07
1101      Switch to using Subversion
1102 kes  Remove src/pygtk-console/ from configure
1103 06Feb07
1104 kes  Delete src/lib/btree.c from win32 build, then add rblist.c
1105      plus the entrypoints.
1106 kes  Apply patch supplied that corrects debug print
1107      in canceling jobs for max run time.  Supplied as
1108      part of bug #621, which was previously fixed.
1109 05Feb07
1110 kes  Test on job_canceled() and sd_msg_thread_done inside
1111      loop starting the message thread to avoid a race condition.
1112      Fixes bug #771.
1113 kes  Remove rl_catch_signal from console.c as it conflicted
1114      with the header definition. Fixes bug #765.
1115 ebl  Fixes bug #766 about RunsOnClient = Yes (case sensitive)
1116 04Feb07
1117 kes  Clarify some stored/acquire messages to indicate if the
1118      problem is with read or append.
1119 02Feb07
1120 kes  Fix memory leak with storage ids in cats/sql_get.c
1121 kes  Terminate watchdog earlier to avoid reference to released
1122      memory -- reported by Jason Austin.
1123 kes  Move closing the database from jobq.c to the director daemon
1124      termination routine. This fixes memory leaks for shadow jobs
1125      (i.e. migration jobs).
1126 kes  Free up the unique jobid chain items in migrate.c.  This fixes
1127      a memory leak problem.
1128 kes  Convert some ugly looking for statements to use foreach_alist
1129      in findlib/find.c.  This will facilitate converting the structures
1130      to use dlist (for large include/exclude lists).
1131 kes  Fix a bug in the btree.c and btree.h routines, then rename them
1132      rblist and add them to be built in src/lib.  Include some new
1133      methods written by Rudolf Cejka that make the code more readable
1134      (hides some of the ugly casting).
1135 kes  Add set_next() and set_prev() methods which make the code much more 
1136      readable. Also add a new dlistString class that facilitates storing
1137      strings in dlists.  To be used in the large include/exclude lists.
1138 kes  Make some trivial modifications to lib/tree.h that use rblist
1139      rather than dlist for storing the tree links. This was suggested
1140      by Rudolf Cejka.  The result of this is that the restore tree now
1141      uses red-black binary trees rather than simple linked lists. This
1142      should give rather dramatic speed improvements for directories
1143      contining large numbers of directories/files (more than 10000).
1144 28Jan07 
1145 kes  Fix maxruntime bug #621.
1146 26Jan07
1147 ebl  Implement the include JobID in spool file name project.
1148 kes  Reorder projects file in order determined by Jan 2007 vote.
1149 kes  Implement item #12 on project list -- quick release of FD by
1150      the SD.
1151 kes  Fix open of SQLite3 db where user does not have write permission
1152      so that DIR does not crash. Fixes bug #761.
1153 25Jan07
1154 kes  Add back missing @ in Win32 Makefile.
1155 kes  Change 'Device not configured to autolabel' from INFO
1156      to WARNING.
1157 kes  Fix jobq.c to restart failed jobs when Reschedule Times = 0 
1158      which should restart an indefinite # of times.
1159 kes  Fix configure --help to print --with-mysql[=DIR]. Same for
1160      other DIR specifications.
1161 23Jan07
1162 rn   Fix msvc build problems. Fix bacula.dll exports for msvc build.
1163      Fix path quoting in SQLite scripts.
1164      Fix problems with SHGetFolderPath.
1165 19Jan07
1166 kes  Create patches/2.0.1-restart.patch. Fixes bug #755.
1167 18Jan07
1168 kes  Fix Job restart on error bug that promotes an Inc to a Full
1169      backup.  This should fix bug #755.
1170 kes  Add qt-console and first cut of code.
1171
1172 Version 2.0.1
1173 12Jan07
1174 kes  Fix Bacula->Documentation link on Win32 to point to index.html
1175      instead of bacula.html. Fixed bug #750.
1176 kes  Return JobId in db_get_job_record() when JobId==0. This should
1177      fix bug #741.
1178 kes  Do not release source pointers when restarting a failed job.
1179 11Jan07
1180 kes  Add dynamic dll entry point for SHGetFolderPath to Win32 code.
1181      This *should* fix bug #747.
1182 kes  Modify winbacula.nsi to substitute with g bin_dir_cmd. Should fix
1183      bug #742.
1184 09Jan07
1185 kes  Modify USTORE constructor to set an empty store_source string, 
1186      and don't copy the store_source string in a cancel.  Hopefully
1187      this will fix Arno's seg fault, bug #744.
1188 kes  Add back code to disable conio in configure. Fixes bug #743.
1189 kes  Correct the Options scanner in the FD to correctly handle  
1190      SHA1 option, which was eating the next option.  Reported by    
1191      Sebastien Guilbaud.
1192 kes  Add code to indicate when the SD is spooling, spool wait, and 
1193      despooling as requested by Alan Brown.
1194
1195 Version 2.0.0 released: 4 January 2007