]> git.sur5r.net Git - bacula/docs/blobdiff - docs/manuals/en/main/newfeatures.tex
update info on bvfs
[bacula/docs] / docs / manuals / en / main / newfeatures.tex
index 309ae677ffd9032b048eebbc9b0ee6f384a38be5..d9d852f05acc79978c5f2218f935d89fe42f1d7e 100644 (file)
@@ -1,18 +1,32 @@
-\chapter{Community Bacula New Features in 5.1.x}
+\chapter{New Features in 5.2.x}
+This chapter presents the new features that have been added to the next
+Community version of Bacula that is not yet released.
+
+\chapter{New Features in 5.2.2}
 This chapter presents the new features that have been added to the current
-Community version of Bacula that is under development. This version will be
-released at some later date, probably near the end of April 2011.
+Community version of Bacula that is now released.
+
+\section{Additions to RunScript variables}
+You can have access to Director name using \%D in your runscript
+command.
+
+\begin{verbatim}
+RunAfterJob = "/bin/echo Director=%D 
+\end{verbatim}
+
+\chapter{New Features in 5.2.1}
+This chapter presents the new features were added in the
+Community release version 5.2.1.
 
 There are additional features (plugins) available in the Enterprise version
 that are described in another chapter. A subscription to Bacula Systems
 is required for the Enterprise version.
 
-
 \section{LZO Compression}
 
-LZO compression was added in the Unix File Daemon. From the user point of view, it
-works like the GZIP compression (just replace {\bf compression=GZIP} with {\bf
-  compression=LZO}).
+LZO compression was added in the Unix File Daemon. From the user point of view,
+it works like the GZIP compression (just replace {\bf compression=GZIP} with
+{\bf compression=LZO}).
 
 For example:
 \begin{verbatim}
@@ -44,9 +58,10 @@ The code for this feature was contributed by Laurent Papier.
 
 \section{New Tray Monitor}
 
-Since the old integrated Windows tray monitor doesn't work anymore with
+Since the old integrated Windows tray monitor doesn't work with
 recent Windows versions, we have written a new Qt Tray Monitor that is available
-for both Linux and Windows.  This new version allows you to run Backup from
+for both Linux and Windows.  In addition to all the previous features,
+this new version allows you to run Backups from 
 the tray monitor menu.
 
 \begin{figure}[htbp]
@@ -107,19 +122,19 @@ Job {
   Selection Type = Job
   Selection Pattern = ".*Save"
 ...
-  Purge Migrated Job = yes
+  Purge Migration Job = yes
 }
 \end{verbatim}
 
 \medskip
 
-This project was submited by Dunlap Blake, testing and documentation was funded
+This project was submited by Dunlap Blake; testing and documentation was funded
 by Bacula Systems.
 
 \section{Changes in Bvfs (Bacula Virtual FileSystem)}
 
 Bat has now a bRestore panel that uses Bvfs to display files and
-directories. It's still experimental.
+directories.
 
 \begin{figure}[htbp]
   \centering
@@ -128,8 +143,7 @@ directories. It's still experimental.
   \caption{Bat Brestore Panel}
 \end{figure}
 
-\texttt{Important}, the Bvfs module is not currently compatible with BaseJobs,
-Copy and Migration jobs.
+the Bvfs module works correctly with BaseJobs, Copy and Migration jobs.
 
 \medskip
 This project was funded by Bacula Systems.
@@ -304,7 +318,7 @@ Example:
 OK
 \end{verbatim}
 
-\subsection*{Cleanup after restore}
+\subsection*{Cleanup after Restore}
 
 To drop the table used by the restore command, you can use the
 \texttt{.bvfs\_cleanup} command.
@@ -313,7 +327,16 @@ To drop the table used by the restore command, you can use the
 .bvfs_cleanup path=b20001
 \end{verbatim}
 
-\section{Changes in the pruning algorithm}
+\subsection*{Clearing the BVFS Cache}
+
+To clear the BVFS cache, you can use the \texttt{.bvfs\_clear_cache} command.
+
+\begin{verbatim}
+.bvfs_clear_cache yes
+OK
+\end{verbatim}
+
+\section{Changes in the Pruning Algorithm}
 
 We rewrote the job pruning algorithm in this version. Previously, in some users
 reported that the pruning process at the end of jobs was very long. It should
@@ -602,30 +625,92 @@ Extended Attributes (XATTRs)
 This project was funded by Planets Communications B.V. and ELM Consultancy B.V.
 and is available with Bacula Enterprise Edition and Community Edition.
 
-\section{Class based database backend drivers}
+\section{Class Based Database Backend Drivers}
+
+The main Bacula Director code is independent of the SQL backend
+in version 5.2.0 and greater.  This means that the Bacula Director can be
+packaged by itself, then each of the different SQL backends supported can
+be packaged separately.  It is possible to build all the DB backends at the
+same time by including multiple database options at the same time.
+
+./configure can be run with multiple database configure options.
+\begin{verbatim}
+   --with-sqlite3
+   --with-mysql
+   --with-postgresql
+\end{verbatim}
+
+Order of testing for databases is:
+\begin{itemize}
+\item postgresql
+\item mysql
+\item sqlite3
+\end{itemize}
+
+Each configured backend generates a file named:
+\verb+libbaccats-<sql_backend_name>-<version>.so+
+A dummy catalog library is created named libbaccats-version.so
+
+At configure time the first detected backend is used as the so called
+default backend and at install time the dummy
+\verb+libbaccats-<version>.so+ is replaced with the default backend type.
+
+If you configure all three backends you get three backend libraries and the
+postgresql gets installed as the default.
+
+When you want to switch to another database, first save any old catalog you
+may have then you can copy one of the three backend libraries over the
+\verb+libbaccats-<version>.so+ e.g.
+
+An actual command, depending on your Bacula version might be:
+\begin{verbatim}
+   cp libbaccats-postgresql-5.2.2.so libbaccats-5.2.2.so
+\end{verbatim}
+
+where the \verb+5.2.2+ must be replaced by the Bacula release
+version number.
+
+Then you must update the default backend in the following files:
+
+\begin{verbatim}
+  create_bacula_database
+  drop_bacula_database
+  drop_bacula_tables
+  grant_bacula_privileges
+  make_bacula_tables
+  make_catalog_backup
+  update_bacula_tables
+\end{verbatim}
+
+And re-run all the above scripts.  Please note, this means
+you will have a new empty database and if you had a previous
+one it will be lost.
 
 All current database backend drivers for catalog information are rewritten
 to use a set of multi inherited C++ classes which abstract the specific
 database specific internals and make sure we have a more stable generic
-interface with the rest of sql code. From now on there is a strict boundery
-between the sql code and the low-level database functions. This new interface
-should also make it easier to add a new backend for a currently unsupported
-database. As part of the rewrite the SQLITE2 code was removed (e.g. only
-SQLITE3 is now supported). An extra bonus of the new code is that you can
-configure multiple backends in the configure and build all backends in one
-compile session and select the correct database backend at install time.
-This should make it a lot easier for packages maintainers.
+interface with the rest of sql code.  From now on there is a strict
+boundery between the SQL code and the low-level database functions.  This
+new interface should also make it easier to add a new backend for a
+currently unsupported database.  As part of the rewrite the SQLite 2 code
+was removed (e.g.  only SQLite 3 is now supported).  An extra bonus of the
+new code is that you can configure multiple backends in the configure and
+build all backends in one compile session and select the correct database
+backend at install time.  This should make it a lot easier for packages
+maintainers.
+
+
 
 \medskip
-We also added cursor support for PostgreSQL backend, this improves memory usage
-for large installation.
+We also added cursor support for PostgreSQL backend, this improves memory
+usage for large installation.
 
 \medskip
-This project was funded by Planets Communications B.V. and ELM Consultancy B.V.
-and Bacula Systems and is available with Bacula Enterprise Edition and
-Community Edition.
+This project was implemented by Planets Communications B.V. and ELM
+Consultancy B.V. and Bacula Systems and is available with both the Bacula
+Enterprise Edition and the Community Edition.
 
-\section{Hash list enhancements}
+\section{Hash List Enhancements}
 
 The htable hash table class has been extended with extra hash functions for
 handling next to char pointer hashes also 32 bits and 64 bits hash keys.
@@ -641,6 +726,12 @@ This project was funded by Planets Communications B.V. and ELM Consultancy B.V.
 and Bacula Systems and is available with Bacula Enterprise Edition and
 Community Edition.
 
+%%
+%%
+%%% =====================================================================
+%%
+%%
+
 
 \chapter{Release Version 5.0.3}