\chapter{Job status and Error codes}
\label{blb:JobStatusChapter}
\index[general]{Job!Status}
\index[general]{Status!Job}

\section{Job levels}

The table \vref{blb:director:job:levels} describes the several levels for a job.
\LTXtable{\linewidth}{t-main-job-levels}

\section{Job types}
The table \vref{blb:director:job:types} describes the several type for a job.
\LTXtable{\linewidth}{t-main-job-types}

\section{Job status}
The table \vref{blb:director:job:status} describes the several status for a job.
\LTXtable{\linewidth}{t-main-job-status}

\section{Bacula Error and Event Code List}

\subsection{Format}

XYZZZZ Where X is the compoment code (D for Director, S for Storage Daemon, F
for FileDaemon, C for Console), Y is the code level (F for fatal, E for error,
A for Abort, W for warning, I for information, D for Daemon message, U for
catalog update, S for security, V for volume operations, C for console and J is
for Job) and a 4 digit code.

\subsection{Director Codes}

\begin{itemize}
\item [DC0001]
  Purge client files event.

\item [DD0001]
  Director startup event.

\item [DJ0001]
  Job creation event.

\item [DU0001]
  Update of the Bacula catalog schema event.

\item [DS0001]
  Authentication failed event from a Console.

\item [DV0001]
  Volume purged event.

\item [DC0002]
  Purge job event.

\item [DD0002]
  Director shutdown event.

\item [DJ0002]
  Job termination event.

\item [DC0003]
  Purge volume event.

\item [DD0003]
  Director cleanup event during startup. Jobs marked as Running or Created
  will be marked as failed during the Director startup.

\item [DJ0003]
  Resume job event.

\item [DC0004]
  Truncate volume event.

\item [DD0004]
  Director configuration reload error event.

\item [DJ0004]
  Run job command event.

\item [DC0005]
  Cancel job event.
  
\item [DD0005]
  Director configuration reload event.

\item [DC0006]
  Disable/Enable Batch mode event.

\item [DC0007]
  Disable/Enable Job event.

\item [DC0008]
  Disable/Enable Client event.

\item [DC0009]
  Disable/Enable Schedule event.

\item [DC0010]
  Delete volume command event.

\item [DC0011]
  Delete pool command event.

\item [DC0012]
  Delete client command event.

\item [DC0013]
  Storage daemon command event.

\item [DC0014]
  Storage daemon command event.
  
\item [DC0015]
  Connection from a Console event.
  
\item [DC0016]
  Disconnection from a Console event.

\item [DC0017]
  Console event sent from a script.
  
\item [DC0018]
  delete object command event.

\item [DC0019]
  Reload command event.

\item [DE0020]
  Password or resource name mismatch between the two components.

\item [DE0021]
  No authorization for the given resource. Check the Console ACLs or
  Director configuration.

\item [DE0028]
  The Director got a SQL Error. This error cannot be recovered.

\item [DE0029]
  The Director cannot connect to a remote FileDaemon resource. Check that the
  remote FileDaemon is started and can be reached via the network.

\item [DE0030]
  No socket found for this client. The client uses the ConnectToDirector
  feature and the Director did not found an open socket to access the client.
  Make sure the Client is started and can access to the Director.

\item [DE0031]
  Protocol error between component. This error cannot be recovered. Check
  the version and the TLS settings of each components.

\item [DE0037]
  Incorrect configuration, such as filedaemon not defined for a Job.

\item [DE0038]
  Incorrect dynamic object/library/plugin found.

\item [DE0039]
  The Director cannot connect to a remote Storage resource. Check that the
  remote Storage Daemon is started and can be reached via the network.

\item [DI0050]
  No Malware found in given Job.

\item [DE0051]
  Unable to update the Malware Database.

\item [DI0052]
  No file to scan for Malware.

\item [DE0053]
  Unable to open the Malware Database export.

\item [DE0054]
  Unable to find a checksum for the JobIds. Use Signature = MD5/SHA256 FileSet option.

\item [DE0055]
  Unable to find a valid checksum database for JobIds.

\item [DE0056]
  Found Malware(s) on JobIds.

\item [DE0060]
  Network connection error. Unable to resolve hostname via gethostbyname.

\item [DE0061]
  Network connection error. Socket open error. Check the TCP/IP
  configuration.

\item [DE0062]
  Unable to find the source address to connect a remote host. Check that
  the interface set as source exists on the system.

\item [DE0063]
  Network socket configuration error. Check the TCP/IP configuration.

\item [DW0063]
  Unable to set socket option such as SO_KEEPALIVE or SO_KEEPIDLE on the socket.

\item [DE0064]
  TLS Error detected. The connect/accept operation cannot be done, or the password is
  incorrect.

\item [DE0065]
  Authentication error. Password or resource name mismatch
  between the two components.

\item [DE0066]
  TLS initialization error.

\item [DE0067]
  TLS Negotiation failed. Check the version and the TLS settings
  of each components.

\item [DE0068]
  TLS certificate verification error.

\item [DE0069]
  TLS configuration error.

\item [DE0071]
  Unable to start TLS protocol. Check the version and the TLS settings
  of each components.

\item [DE0072]
  TLS shutdown error.

\subsection{Storage Daemon Codes}

\item [SS0001]
  Authentication failed.

\item [SD0001]
  Storage daemon startup event.

\item [SD0002]
  Storage daemon device initialization event.
  
\item [SJ0002]
  Storage Daemon End of a Job event.

\item [SD0003]
  Storage daemon device shutdown event.

\item [SJ0003]
  Mark volume as immutable or read-only event.
  
\item [SE0009]
  The Storage Daemon cannot connect to a remote resource. Check that the
  remote service is started and can be reached via the network.

\item [SW0017]
  Incorrect configuration, such as incorrect Maximum Block Size on a Device.

\item [SE0017]
  Incorrect configuration error, such as a miss-configuration of the device.

\item [SF0017]
  Incorrect configuration fatal error, such as invalid device type.

\item [SA0017]
  Incorrect configuration fatal error, such as Plugin Directory not defined.

\item [SA0020]
  Unable to initialize kernel objects such as mutex, conditional variable.

\item [SE0029]
  The Storage Daemon cannot connect to a remote FileDaemon resource. Check that the
  remote FileDaemon is started and can be reached via the network.

\item [SF0031]
  Protocol error between component. This error cannot be recovered. Check
  the version and the TLS settings of each components.

\item [SA0038]
  Incorrect dynamic object.

\item [SE0038]
  Lookup of symbol "BaculaSDdriver" in driver for device failed.

\item [SE0039]
  The Storage Daemon cannot connect to a remote Storage resource. Check that the
  remote Storage Daemon is started and can be reached via the network.

\item [SE0060]
  Network connection error. Unable to resolve hostname via gethostbyname.

\item [SE0061]
  Network connection error. Socket open error. Check the TCP/IP
  configuration.

\item [SE0062]
  Unable to find the source address to connect a remote host. Check that
  the interface set as source exists on the system.

\item [SE0063]
  Network socket configuration error. Check the TCP/IP configuration.

\item [SW0063]
  Unable to set socket option such as SO_KEEPALIVE or SO_KEEPIDLE on the socket.

\item [SE0064]
  TLS Error detected. The connect/accept operation cannot be done, or the password is
  incorrect.

\item [SE0065]
  Authentication error. Password or resource name mismatch
  between the two components.

\item [SF0065]
  Director Authentication error. Check the password on both Storage and
  Director side.

\item [SE0066]
  TLS initialization error.

\item [SE0067]
  TLS Negotiation failed. Check the version and the TLS settings
  of each components.

\item [SE0068]
  TLS certificate verification error.

\item [SE0069]
  TLS configuration error.

\item [SE0071]
  Unable to start TLS protocol. Check the version and the TLS settings
  of each components.

\item [SE0072]
  TLS shutdown error.

\item [SW0106]
  Incorrect device configuration.

\item [SW0108]
  Incorrect changer configuration.

\item [SA0201]
  Write block error.

\item [SE0201]
  Write error on device.

\item [SF0201]
  Write error on device. Usually found after SE0201 errors.

\item [SW0201]
  Free space caused end of the volume.

\item [SE0202]
  Block buffer size looping problem.

\item [SF0202]
  Error writing final JobMedia record.

\item [SI0202]
  End of volume message.

\item [SE0203]
  Volume label error.

\item [SF0203]
  Write/read error on disabled device.

\item [SE0204]
  Read error on device.

\item [SF0204]
  Write error on device at EOM.

\item [SE0205]
  Short block found on device, block discarded.

\item [SF0205]
  Attemp to write on read-only volume.

\item [SE0206]
  Invalid block length found.

\item [SF0206]
  Attemp to write/read on closed device.

\item [SE0207]
  Invalide block length found for tape device.

\item [SF0207]
  Seek error on adata volume.

\item [SE0208]
  Volume data error after a short block. block discarded.

  
\subsection{File Daemon/Client Error Codes}

\item [FC0001]
  Director disconnection event.

\item [FC0002]
  Director connection event.

\item [FC0003]
  Cancel command event.

\item [FS0001]
  Authentication failure event.

\item [FD0001]
  Start of the File Daemon event.

\item [FD0002]
  Shutdown of the File Daemon event.

\item [FJ0001]
  Start of Job event.

\item [FJ0002]
  End of Job event.

\item [FE0009]
  The Client cannot connect to a remote resource. Check that the
  remote service is started and can be reached via the network.

\item [FE0019]
  The FileDaemon cannot connect to a remote Director resource. Check that the
  remote Director Daemon is started and can be reached via the network.
  
\item [FE0027]
  Connection of a Director/Console not allowed on the Client.

\item [FE0031]
  Protocol error between component. This error cannot be recovered. Check
  the version and the TLS settings of each components.  

\item [FF0037]
  Incorrect Plugin Option for Job requested. The Plugin specified is not
  loaded on the FileDaemon, check that the plugin is correctly installed
  and listed in "status client" output.
  
\item [FE0039]
  The FileDaemon cannot connect to a remote Storage resource. Check that the
  remote Storage Daemon is started and can be reached via the network.

\item [FE0060]
  Network connection error. Unable to resolve hostname via gethostbyname.

\item [FE0061]
  Network connection error. Socket open error. Check the TCP/IP
  configuration.

\item [FE0062]
  Unable to find the source address to connect a remote host. Check that
  the interface set as source exists on the system.

\item [FE0063]
  Network socket configuration error. Check the TCP/IP configuration.

\item [FW0063]
  Unable to set socket option such as SO_KEEPALIVE or SO_KEEPIDLE on the socket.

\item [FE0064]
  TLS Error detected. The connect/accept operation cannot be done, or the password is
  incorrect.

\item [FE0065]
  Authentication error. Password or resource name mismatch
  between the two components.

\item [FF0065]
  Director Authentication error. Check the password on both Storage and
  Director side.

\item [FE0066]
  TLS initialization error.

\item [FE0067]
  TLS Negotiation failed. Check the version and the TLS settings
  of each components.

\item [FE0068]
  TLS certificate verification error.

\item [FE0069]
  TLS configuration error.

\item [FE0071]
  Unable to start TLS protocol. Check the version and the TLS settings
  of each components.

\item [FE0072]
  TLS shutdown error.

\subsection{Console Error Codes}

\item [CE0029]
  The Console cannot connect to a remote resource. Check that the
  remote service is started and can be reached via the network.
