This document describes recovery handling in the Natural IMS TM Interface.
The following topics are covered:
The Natural IMS TM Interface is protected by an ESTAEX environment which takes control in case of an abend.
If a user abend is detected, resources are cleaned up and the abend is percolated without giving control to Natural.
If a system abend is detected, Natural is informed about the abend
and, depending on the setting of the Natural profile parameter
DU
, Natural continues
with an error message or terminates the session.
If the support of IBM's Language Environement (LE) is enabled and the abend occurs while an LE program has control, user-written or language-specific condition handlers are honored and Natural is only informed about the abend if the condition is percolated by all LE condition handlers. In this case, the abend is handled by Natural in the following steps before the standard abend handling takes place:
the corresponding LE error message is written to
SYSOUT
,
an LE snap dump is written to CEEDUMP
according to LE
run-time option TERMTHDACT
,
LE is instructed to resume processing after the Natural
CALL
statement,
a special Natural error message (NAT0950 if
DU=OFF
or
NAT9967 if DU=ON
) is issued which indicates the LE error
number.
In all cases, you can produce a dump which represents the situation
at the time when the error occurred (register contents, PSW, etc.). The dump is
produced if DU=ON
or
DU=SNAP
or if the user abend has requested this.
A non-recoverable error is a logical error detected by the Natural IMS TM Interface which cannot be handled by Natural. These situations typically occur during startup, termination or terminal I/O. In all cases, the Natural runtime is not active and can thus not react to the error.
If a non-recoverable error is detected, the Natural IMS TM Interface issues an NII error and terminates the session. The error message is also written to the IMS TM log and to the system log. Depending on the dump option in the error message table, a snap dump is produced.
If you do not wish a message to be written to the IMS TM log, set the
ERRLHDR
keyword subparameter of the NTIMSPE
macro (Natural parameter
module) explicitely to null, that is, you specify ERRLHDR=,
.
If it is not possible to send the error message (for example if the GU has failed), the session abends (user abend).
If a logical error is detected by the Natural IMS TM Interface which can be handled by Natural, for example an invalid destination for a report, a Natural error message is issued and Natural proceeds with its standard error handling.