Error handling

An error that occurs during MSIF processing and interrupts a scenario can be of one of the following types:
Database or program error
These errors include database timeouts, stopped table spaces, missing rows, invalid data, and program exceptions. When a database or program error occurs, the MSIF transfer service:
  • Rolls back the current processing step
  • Sets the trace level of the DNFO and DNPA components to Debug
  • Automatically attempts to reprocess the step
  • Resets the trace levels of the DNFO and DNPA components to their original values
It repeats this procedure until either it is successful or it reaches the backout threshold. If the threshold is reached, it issues an error event and stops its processing. After the error is resolved, you can issue the start command to the system operation service (DNI_SYSOP) to cause the affected MSIF transfer service to resume processing.
Recoverable error
An error that is not a database or program error and is transient in nature is said to be recoverable. For example, an attempt to put a message into the input queue of an SAG that is not running results in a recoverable error. In such circumstances, the transfer condition of the scenario is set to inError. Scenarios that encounter recoverable errors can be recovered either manually, by issuing the recover command (see recover for a description of this command), or, for most types of recoverable errors, automatically (see Automatic recovery for a description of the types of errors that can be recovered automatically). For a SendMsg, SendFile, or RespondDownload scenario the MSIF transfer service does not create new scenario but flags the resent primitive as a possible duplicate emission (PDE).
Unrecoverable error
An error that is permanent in nature is said to be unrecoverable. For example, an invalid application message or a configuration error results in an unrecoverable error. Some unrecoverable errors require that the corresponding application message is placed in a backout queue (see Backout queues).