\chapter{New Features in 5.1.x}
This chapter presents the new features that have been added to the
current version of Bacula that is under development. This version will be
-released at some later date, probably near the end of 2010.
+released at some later date, probably near the end of April 2011.
-\section{Purge Migration Job when Completed}
+\section{Restart Incomplete Job}
-A new directive may be added to the Migration Job definition in the Director
-configuration file to purge the job migrated at the end of a migration.
+
+\medskip
+This project was funded by Bacula Systems and is available with Bacula
+Enterprise Edition and Community Edition.
+
+\section{New Tray Monitor}
+
+Since the old integrated Windows tray monitor doesn't work anymore 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
+the tray monitor menu.
+
+\begin{figure}[htbp]
+ \centering
+ \includegraphics[width=10cm]{\idir tray-monitor}
+ \label{fig:traymonitor}
+ \caption{New tray monitor}
+\end{figure}
+
+\begin{figure}[htbp]
+ \centering
+ \includegraphics[width=10cm]{\idir tray-monitor1}
+ \label{fig:traymonitor1}
+ \caption{Run a Job through the new tray monitor}
+\end{figure}
+
+\medskip
+This project was funded by Bacula Systems and is available with Bacula
+the Enterprise Edition and the Community Edition.
+
+\section{Purge Migration Job}
+
+The new {\bf Purge Migration Job} directive may be added to the Migration
+Job definition in the Director's configuration file. When it is enabled
+the Job that was migrated during a migration will be purged at
+the end of the migration job.
For example:
\begin{verbatim}
\section{Job Bandwidth Limitation}
-A new directive may be added to FileDaemon or Director to allow users to limit
-the bandwidth used by a Job on a Client. It can be set for all Jobs globally,
-per Directors in the File Daemon configuration, or per Job in the Director
-configuration file.
+The new {\bf Job Bandwidth Limitation} directive may be added to the File
+daemon's and/or Director's configuration to limit the bandwidth used by a Job on a
+Client. It can be set in the File daemon's conf file for all Jobs run
+in that File daemon, or it can be set for each Job in the
+Director's conf file.
For example:
\begin{verbatim}
The above example would cause any jobs running with the FileDaemon to not
exceed 5MB/s of throughput when sending data to the Storage Daemon.
-You can specify the speed parameter in k/s, kb/s, m/s, mb/s.
+You can specify the speed parameter in k/s, KB/s, m/s, MB/s.
For example:
\begin{verbatim}
}
\end{verbatim}
-The above example would cause job \texttt{localhost-data} to not exceed 5MB/s
-of throughput when sending data to the Storage Daemon.
+The above example would cause Job \texttt{localhost-data} to not exceed 5MB/s
+of throughput when sending data from the File daemon to the Storage daemon.
-A new console commande \texttt{setbandwidth} permits to set dynamically the
+A new console command \texttt{setbandwidth} permits to set dynamically the
maximum throughput of a running Job or for future jobs of a Client.
\begin{verbatim}
* setbandwidth limit=1000000 jobid=10
\end{verbatim}
-The \texttt{limit} parameter is in kb/s.
+The \texttt{limit} parameter is in KB/s.
\medskip
-This project was funded by Bacula Systems and is available with Bacula
-Enterprise Edition and Community Edition.
+This project was funded by Bacula Systems and is available in
+the Enterprise Edition and the Community Edition.
\section{Support for MSSQL Block Level Backup}
-This project was funded by Bacula Systems and is available with Bacula
+This project was funded by Bacula Systems and is available with the Bacula
Enterprise Edition.
\section{Support for NDMP protocol}
}
\end{verbatim}
-This project was funded by Bacula Systems and is available with Bacula Enterprise
-Edition.
+This project was funded by Bacula Systems and is available with the Bacula
+Enterprise Edition.
\section{Incremental/Differential Block Level Difference Backup}
The new \texttt{delta} Plugin is able to compute and apply signature-based file
-differences. It can be used to backup only changes in a big binary file like Outlook
-PST, VirtualBox/VmWare images or database files.
+differences. It can be used to backup only changes in a big binary file like
+Outlook PST, VirtualBox/VmWare images or database files.
It supports both Incremental and Differential backups and stores signatures
database in the File Daemon working directory. This plugin is available on all
}
\end{verbatim}
-This project was funded by Bacula Systems and is available with Bacula Enterprise
-Edition.
+This project was funded by Bacula Systems and is available with the Bacula
+Enterprise Edition.
\section{Include All Windows Drives in FileSet}
\end{verbatim}
-This project was funded by Bacula Systems and is available with Bacula
+This project was funded by Bacula Systems and is available with the Bacula
Enterprise Edition.
+\section{SQL Catalog Enhancements}
+
+% TODO: Marco can explain more things
+Bacula uses a new catalog backend structure, it allows to build all SQL drivers
+with the same \texttt{./configure ; make} session.
+
+We also added cursor support for PostgreSQL backend, this improves memory usage
+for large installation.
+
\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.
+\begin{figure}[htbp]
+ \centering
+ \includegraphics[width=12cm]{\idir bat-brestore}
+ \label{fig:batbrestore}
+ \caption{Bat Brestore Panel}
+\end{figure}
+
\texttt{Important}, the Bvfs module is not currently compatible with BaseJobs,
Copy and Migration jobs.
\subsection*{Get all versions of a specific file}
Bvfs allows you to find all versions of a specific file for a given Client with
-the \texttt{.bvfs\_version} command. To avoid problems with encoding, this function
-uses only PathId and FilenameId. The jobid argument is mandatory but unused.
+the \texttt{.bvfs\_version} command. To avoid problems with encoding, this
+function uses only PathId and FilenameId. The jobid argument is mandatory but
+unused.
\begin{verbatim}
.bvfs_versions client=filedaemon pathid=num filenameid=num jobid=1
%\end{verbatim}
%
+\section{ACL/Extended Attributes}
+
+We added support for NFSv4 ACLs on FreeBSD 8.1 and IRIX extended attributes.
+
+This project was funded by Marco van Wieringen.
+
\section{Additions to the Plugin API}
The bfuncs structure has been extended to include a number of
new entrypoints.