From: Kern Sibbald Date: Mon, 13 Aug 2007 11:29:19 +0000 (+0000) Subject: Update web site and developers doc X-Git-Tag: Release-2.2.1~77 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=ca02754ba5a7e5a8fa78f1f03a3f5626a074a4bc;p=bacula%2Fdocs Update web site and developers doc --- diff --git a/docs/developers/developers.tex b/docs/developers/developers.tex index 06ec6dba..2107344d 100644 --- a/docs/developers/developers.tex +++ b/docs/developers/developers.tex @@ -11,6 +11,7 @@ \usepackage{index} \usepackage{setspace} \usepackage{hyperref} +\usepackage{url} \makeindex @@ -31,16 +32,18 @@ the essence from your computers. } \end{center} } + + \author{Kern Sibbald} \date{\vspace{1.0in}\today \\ This manual documents Bacula version \input{version} \\ - \vspace{0.2in}\\ - Copyright \copyright 1999-2006, Free Software Foundation Europe e.V. - \\ - \vspace{0.2in}\\ - Permission is granted to copy, distribute and/or modify this document under the terms of the \\ - GNU Free Documentation License, Version 1.2 published by the Free Software Foundation; \\ - with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. \\ + \vspace{0.2in} + Copyright \copyright 1999-2007, Free Software Foundation Europe + e.V. \\ + \vspace{0.2in} + Permission is granted to copy, distribute and/or modify this document under the terms of the + GNU Free Documentation License, Version 1.2 published by the Free Software Foundation; + with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License". } diff --git a/docs/developers/fdl.tex b/docs/developers/fdl.tex index ea027bba..6f173a4a 100644 --- a/docs/developers/fdl.tex +++ b/docs/developers/fdl.tex @@ -1,17 +1,17 @@ %---------The file header--------------------------------------------- -\usepackage[english]{babel} %language selection -\usepackage[T1]{fontenc} - -\pagenumbering{arabic} - -\usepackage{hyperref} -\hypersetup{colorlinks, - citecolor=black, - filecolor=black, - linkcolor=black, - urlcolor=black, - pdftex} +%% \usepackage[english]{babel} %language selection +%% \usepackage[T1]{fontenc} + +%%\pagenumbering{arabic} + +%% \usepackage{hyperref} +%% \hypersetup{colorlinks, +%% citecolor=black, +%% filecolor=black, +%% linkcolor=black, +%% urlcolor=black, +%% pdftex} %--------------------------------------------------------------------- diff --git a/docs/developers/generaldevel.tex b/docs/developers/generaldevel.tex index 9773ee7f..6beb52d9 100644 --- a/docs/developers/generaldevel.tex +++ b/docs/developers/generaldevel.tex @@ -311,6 +311,7 @@ Getting code implemented in Bacula works roughly as follows: direction). When ever possible, we would like to avoid this, and ensure a continuation of the code and a sharing of the development, debugging, documentation, and maintenance responsibilities. +\end{itemize} \subsection*{SVN Usage} @@ -669,7 +670,7 @@ long as you are careful only to change files that you want changed, you have little to worry about. \subsection*{Subversion Resources} -\link{Subversion (svn) Resources} +\index{Subversion (svn) Resources} \addcontentsline{toc}{subsection}{Subversion Resources} \begin{verbatim} @@ -707,7 +708,7 @@ Subversion Book \elink{http://svnbook.red-bean.com}{http://svnbook.red-bean.com} Subversion Clients -\elink{http://subversion.tigris.org/project_packages.html}{http://subversion.tigris.org/project_packages.html} +\elink{http://subversion.tigris.org/project\_packages.html}{http://subversion.tigris.org/project\_packages.html} (For Windows users the TortoiseSVN package is awesome) @@ -999,11 +1000,11 @@ so be conservative in your use of C++ features. correct types whenever possible. \item Using undefined storage specifications such as (short, int, long, - long long, size_t ...). The problem with all these is that the number of bytes + long long, size\_t ...). The problem with all these is that the number of bytes they allocate depends on the compiler and the system. Instead use - Bacula's types (int8_t, uint8_t, int32_t, uint32_t, int64_t, and - uint64_t). This guarantees that the variables are given exactly the - size you want. Please try at all possible to avoid using size_t ssize_t + Bacula's types (int8\_t, uint8\_t, int32\_t, uint32\_t, int64\_t, and + uint64\_t). This guarantees that the variables are given exactly the + size you want. Please try at all possible to avoid using size\_t ssize\_t and the such. They are very system dependent. However, some system routines may need them, so their use is often unavoidable. @@ -1011,7 +1012,7 @@ so be conservative in your use of C++ features. to release it. \item Heap allocation (malloc) unless needed -- it is expensive. Use - POOL_MEM instead. + POOL\_MEM instead. \item Templates -- they can create portability problems. @@ -1033,7 +1034,7 @@ so be conservative in your use of C++ features. \item A single point of exit from all subroutines. A goto is perfectly OK to use to get out early, but only to a label - named bail_out, and possibly an ok_out. See current code + named bail\_out, and possibly an ok\_out. See current code examples. \item Malloc and free within a single subroutine. diff --git a/docs/developers/md5.tex b/docs/developers/md5.tex index 4a180a4e..1fa7a7ef 100644 --- a/docs/developers/md5.tex +++ b/docs/developers/md5.tex @@ -2,7 +2,7 @@ %% \section*{Bacula MD5 Algorithm} -\label{_ChapterStart} +\label{MD5Chapter} \addcontentsline{toc}{section}{} \subsection*{Command Line Message Digest Utility } diff --git a/docs/home-page/news.txt b/docs/home-page/news.txt index 6ba0184a..832266f4 100644 --- a/docs/home-page/news.txt +++ b/docs/home-page/news.txt @@ -1,3 +1,181 @@ +Kern;;;2007/8/11;;;14:30 + +Bacula Version 2.2.0 has been released to Source Forge. + + Release Notes for Bacula 2.2.0 + + Bacula code: Total files = 520 Total lines = 195,550 (*.h *.c *.in) + 82 new files, 41,221 new lines of code, 208,380 lines of change from 2.0.3 + +This Director and Storage daemon must be upgraded at the same time, +but they should be compatible with all 2.0.x File daemons, unless you +use some of the new features that affect the FD. In other words, you should +not have to upgrade all your File daemons when you upgrade. There is +no database upgrade needed from version 2.0.x to 2.2.0. + +Areas requiring caution or testing: +- You must have the thread safe version of MySQL client libraries loaded + to build with MySQL enabled. +- Volumes are pruned only when absolutely necessary -- this may cause + your database to grow compared to prior Bacula versions. +- Solaris door and even port files are no longer restored (equivalent + to what we do with sockets). +- SQLite is no longer supported for Solaris -- it fails too often with + bus errors. SQLite3 should work on Solaris. +- The default setting for SQLite3 is now 'PRAGMA synchronous=OFF'. + This makes it run 30 times faster, but increases the possiblity + of a corrupted database if your server shuts down unexpectedly. + The default behavior can be changed in src/version.h +- Restore on Win32, and in particular on Vista is untested. Please + test before relying on it. It should backup and restore reparse + points. +- Win32 servers are untested, and very likely not to work. + +The major new features are: +- Much faster insertion of attributes (somewhere around 10 times), + many thanks to Eric Bollengier and Marc Cousin. +- First release of bat (Bacula Administration Tool). Note to build + bat you must explicitly enable it on the ./configure line, you + must have the Qt4 version 4.2 or later libraries loaded, the qwt + (Qt Graphics) package loaded, and qmake and the other Qt4 tools + must be available. Most of the implementation was done by Dirk Bartley. +- Red/Black restore in memory tree (500 times faster loading). +- The Regex Where code to allow easier relocation of restored files + thanks to Eric. +- Socket level heartbeat for all connections (untested). +- posix_fadvise() use in the FD to improve performance reduces + swapping due to opening/reading lots of files. Win32 equivalent + implemented. +- Much improved Volume reservation code that should eliminate most + conflicts experienced in multiple drive autochangers. +- Simpler locking in the SD in the reservation system. +- Detection of file size/date change during backup if enabled. +- New Recycle Pool feature -- thanks to Eric. +- Efficient implementation of very large include/exclude lists. +- Volumes are no longer pruned during 'status dir' +- Pruning is now more efficient, and if a Volume is purged, + during pruning, it is immediately discovered. +- License is now GPL v2 without modifications, fix a few copyright + mistakes made when adding FSFE copyright notice. + +New ./configure options: +- --enable-bwx-console +- --enable-bat +- --with-qwt= +- --with-db-name= +- --with-db-user= +- --enable-batch-insert + +New bconsole commands: +- exec +- memory +- update recyclepool +- .sql +- .api +- .pwd (in restore tree) +- restoreclient (keyword) +- backupclient (keyword) +- regexwhere (keyword) +- update jobid (new command) +- recyclepool (keyword) + +New directives: +- Heartbeat Interval (bconsole.conf) +- Heartbeat Interval (bacula-dir.conf in Director, Client, Storage) +- TLS Allowed CN (bacula-dir.conf in Client) +- Regex Where (bacula-dir.conf in Job) +- Strip Prefix (bacula-dir.conf in Job) +- Add Prefix (bacula-dir.conf in Job) +- Add Suffex (bacula-dir.conf in Job) +- Recycle Pool (bacula-dir.conf in Pool) +- FailJobOnError (bacula-dir.conf in RunScript) +- CheckFileChanges (bacula-dir.conf in FileSet) +- StripPath (bacula-dir.conf in FileSet) + +Other features or bug fixes: +- Fixed bugs: 916, 910, 917, 914, 906, 907, + 842, 830, 893, 861, 888, 886, 807, 877, 872 + 885, 887, 864, 874, 882, 881, 863, 859, + 856, 854, 845, 847, 846, 809, 772, + 822, 825, 824, 808, 802, 797, 798, 795, 789, 791, + 788, 780, 763, 782, 612, 767, 775, 621, 772, 764, + 766, 621, 761, 755, 750, 741, 747, 742, 744, and 743. +- Configure bat with --enable-bat. Define qwt libraries with + --with-qwt=. See Installation chapter of manual for details. +- Create a depkgs-qt package that has both Qt4 and qwt, which are + needed to build bat. Most modern Linux systems will have both + these packages in the distro. +- Storage overrides delete all previous storage definitions instead + of prepending. +- One should be able to mount and unmount removable devices if the + Device resource has Removeable Media set and the mount and unmount + directives are defined. +- ./configure will do a better job of searching for qwt libraries. +- The Win32 version can no longer be shutdown from the tray monitor. + Use the command line or the Services panne. +- Keep prune_volumes() from pruning the whole Scratch pool. +- More debug output in status storage. +- Correct moving a Scratch volume from pool to pool (some + critical columns were lost). +- Different locking in reservations and despooling systems, + which means more micro-locking and less macro-locking, which + should give a lot more concurrency at the expense of slightly + (<0.1%) more overhead due to more locking/unlocking, but + concurrent jobs should run much faster. +- Additional drive reservation algorithm that should solve a lot of + the problems experienced with multiple drive autochangers. +- Storage daemon status command enhanced to more clearly show Volume, + pool and media type when a job is waiting. +- Made bsmtp work with more strict SMTP servers. +- Detect doubly freed buffers in smartall.c +- wx-console renamed to bwx-console (Fedora request) +- gnome-console renamed to bgnome-console (Fedora request) +- Migration preserves original job's FileSetId +- Spooling implemented for migration jobs. +- Config files can be read through a pipe, by specifying a leading | + in front of the configuration path/filename. +- New memory command (bconsole) that will print the current Director's + memory usage, and an in use buffer dump. +- Console name changed from *Console* to -Console- to accomodate Win32 + filename restrictions. +- Corrected the Win32 ftruncate bug. +- Additional version information added to Job reports. +- New -8 option for bsmtp to specify UTF-8 encoding type. +- bsmtp will no longer add < > to target (from, to, cc) if there + is already a < in the target. +- Prefer Mounted Volumes extended to mean a volume that is being + mounted by another job. +- Runscript timing set to same as version 1.38.11 +- New TLS Allowed CN directive(s) permitted. +- New bconsole 'exec' command to run external script/command. +- Turn on FreeBSD/OpenBSD code to set EOT model on tape. +- Drop from root done before database is opened. +- Database user and name can be configured with: + --with-db-name=name --with-db-user=user +- Turn on wait_for_drive in mtx-changer script. +- Rework how bar codes are handled in mtx-changer script. + This appears to have been an unreported bug. +- Updated nagios plugin supplied by Christian Masopust +- Better restricted console ACL checking. +- New Client Connect Wait directive in Storage daemon so that + users can configure how long SD waits for FD connection. +- Bacula will no longer permit pruning of the currently running + job (note, if other jobs are running, they may be pruned). +- Sockets are no longer restored. +- dbcheck works in 300K chunks so will typically run faster. +- Include/Exclude lists can now be efficiently handled for quite + large sizes -- tens of thousands of entries. +- Several memory leaks in migration and database usage were fixed. +- New console keyword restoreclient, which specifies the client to + which the restore will be sent. The client keyword specifies + the backup client. The restoreclient keyword is optional if it is + not specified, the backup client will also be the restore client. +- The disk file size is now checked to ensure that it agrees with the + catalog value before Bacula will append to the disk (same as tape + and DVD). + +;;; + Kern;;;2007/3/6;;;14:30 Bacula Version 2.0.3 has been released to Source Forge.