user-detected program errors, queue manager detected, queue manager detected errors, abnormal termination, termination, abnormal" />
Program errors
Program errors might be associated with user application program code or WebSphere MQ code, and fall into two categories:
- User-detected errors
- Subsystem-detected errors
User-detected errors
User-detected errors are detected by the user (or a user-written application program) when the results of a service request are not as expected (for example, a nonzero completion code). The collection of problem determination data cannot be automated because detection occurs after the WebSphere MQ function has completed. Rerunning the application with the WebSphere MQ user parameter trace facility activated can provide the data needed to analyze the problem. The output from this trace is directed to the generalized trace facility (GTF).
We can turn the trace on and off using an operator command. Refer to Using trace for problem determination for more information.
Queue manager detected errors
The queue manager detects errors such as:
- A program check
- A data set filling up
- An internal consistency error
WebSphere MQ analyzes the error and takes the following actions:
- If the problem was caused by a user or application error (such as an invalid address being used), the error is reflected back to the application by completion and reason codes.
- If the problem was not caused by a user or application error (for example, all available DASD has been used, or the system detected an internal inconsistency), WebSphere MQ recovers if possible, either by sending completion and reason codes to the application, or if this is not possible, by abending the application.
- If WebSphere MQ cannot recover, it terminates with a specific reason code. An SVC dump is usually taken recording information in the system diagnostic work area (SDWA) and variable recording area (VRA) portions of the dump, and an entry is made in SYS1.LOGREC.