Are there any error messages, return codes or other error conditions?
Use this topic to investigate error messages, return codes, and conditions where the queue manager or channel initiator terminated.
The problem might produce the following types of error message or return codes:
- CSQ messages and reason codes
- IBM MQ for z/OS error messages have the prefix CSQ. If you receive any messages with this prefix (for example, in the console log, or the CICS log), see IBM MQ for z/OS messages, completion, and reason codes for an explanation.
- Other messages
- For messages with a different prefix, look in the appropriate messages and codes topic for a suggested course of action. See The message keyword which lists possible message prefixes and appropriate manuals.
- Unusual messages
- Be aware of unusual messages associated with the startup of IBM MQ for z/OS, or issued while the system was running before the error occurred. Any unusual messages might indicate some system problem that prevented your application from running successfully.
- Application MQI return codes
- If the application gets a return code indicating that an MQI call has failed, see Return codes for a description of that return code.
Have you received an unexpected error message or return code?
If the application has received an unexpected error message, consider whether the error message has originated from IBM MQ or from another program.
- IBM MQ error messages
IBM MQ for z/OS error messages are prefixed with the letters CSQ.
If you get an unexpected IBM MQ error message (for example, in the console log, or the CICS log), see IBM MQ for z/OS messages, completion, and reason codes for an explanation.
IBM MQ for z/OS messages, completion, and reason codes might give you enough information to resolve the problem quickly, or it might redirect you to another manual for further guidance. If we cannot deal with the message, you might have to contact the IBM support center for help.
- Non- IBM MQ error messages
If you get an error message from another IBM program, or from the operating system, look in the messages and codes manual from the appropriate library for an explanation of what it means.
In a queue-sharing environment, look for the following error messages:
- XES (prefixed with the letters IXL)
- Db2 (prefixed with the letters DSN)
- RRS (prefixed with the letters ATR)
See The message keyword for a list of the most common message prefixes.
- Unexpected return codes
- If the application has received an unexpected return code from IBM MQ, see Return codes for information about how the application can handle IBM MQ return codes.
Check for error messages
Issue the DISPLAY THREAD(*) command to check if the queue manager is running. For more information about the command, see DISPLAY THREAD. If the queue manager has stopped running, look for any message that might explain the situation. Messages are displayed on the z/OS console, or on your terminal if we are using the operations and control panels. Use the DISPLAY DQM command to see if the channel initiator is working, and the listeners are active. The z/OS commandDISPLAY R,Llists messages with outstanding replies. Check to see whether any of these replies are relevant. In some circumstances, for example, when it has used all its active logs, IBM MQ for z/OS waits for operator intervention.
No error messages issued
If no error messages have been issued, perform the following procedure to determine what is causing the problem:
- Issue the z/OS commands
DISPLAY A,xxxxMSTR DISPLAY A,xxxxCHIN(where xxxx is the IBM MQ for z/OS subsystem name). If you receive a message telling you that the queue manager or channel initiator has not been found, this message indicates that the subsystem has terminated. This condition could be caused by an abend or by operator shutdown of the system.- If the subsystem is running, you receive message IEE105I. This message includes the CT=nnnn field, which contains information about the processor time being used by the subsystem. Note the value of this field, and reissue the command.
- If the CT= value has not changed, this indicates that the subsystem is not using any processor time. This could indicate that the subsystem is in a wait state (or that it has no work to do). If we can issue a command like DISPLAY DQM and you get output back, this indicates there is no work to do rather than a hang condition.
- If the CT= value has changed dramatically, and continues to do so over repeated displays, this could indicate that the subsystem is busy or possibly in a loop.
- If the reply indicates that the subsystem is now not found, this indicates that it was in the process of terminating when the first command was issued. If a dump is being taken, the subsystem might take a while to terminate. A message is produced at the console before terminating.
To check that the channel initiator is working, issue the DISPLAY DQM command. If the response does not show the channel initiator working this could be because it is getting insufficient resources (like the processor). In this case, use the z/OS monitoring tools, such as RMF, to determine if there is a resource problem. If it is not, restart the channel initiator.
Has the queue manager or channel initiator terminated abnormally?
Look for any messages saying that the queue manager or channel initiator address space has abnormally terminated. If you get a message for which the system action is to terminate IBM MQ, find out whether a system dump was produced, see IBM MQ dumps.
IBM MQ for z/OS might still be running
Consider also that IBM MQ for z/OS might still be running, but only slowly. If it is running slowly, you probably have a performance problem. To confirm this, see Is the application or IBM MQ for z/OS running slowly. Refer to Dealing with performance problems for advice about what to do next.
Parent topic: Making initial checks on z/OS