Resolving problems with IBM MQ MQI clients
This collection of topics contains information about techniques for solving problems in IBM MQ MQI client applications.
An application running in the IBM MQ MQI client environment receives MQRC_* reason codes in the same way as IBM MQ server applications. However, there are additional reason codes for error conditions associated with IBM MQ MQI clients. For example:
- Remote machine not responding
- Communications line error
- Invalid machine address
The most common time for errors to occur is when an application issues an MQCONN or MQCONNX and receives the response MQRC_Q_MQR_NOT_AVAILABLE. Look in the client error log for a message explaining the failure. There might also be errors logged at the server, depending on the nature of the failure. Also, check that the application on the IBM MQ MQI client is linked with the correct library file.
IBM MQ MQI client fails to make a connection
An MQCONN or MQCONNX might fail because there is no listener program running on the server, or during protocol checking.
When the IBM MQ MQI client issues an MQCONN or MQCONNX call to a server, socket and port information is exchanged between the IBM MQ MQI client and the server. For any exchange of information to take place, there must be a program on the server with the role to 'listen' on the communications line for any activity. If there is no program doing this, or there is one but it is not configured correctly, the MQCONN or MQCONNX call fails, and the relevant reason code is returned to the IBM MQ MQI client application.
If the connection is successful, IBM MQ protocol messages are exchanged and further checking takes place. During the IBM MQ protocol checking phase, some aspects are negotiated while others cause the connection to fail. It is not until all these checks are successful that the MQCONN or MQCONNX call succeeds.
For information about the MQRC_* reason codes, see API reason codes.
Stopping IBM MQ MQI clients
Even though an IBM MQ MQI client has stopped, it is still possible for the associated process at the server to be holding its queues open. The queues are not closed until the communications layer detects that the partner has gone.
If sharing conversations is enabled, the server channel is always in the correct state for the communications layer to detect that the partner has gone.
Error messages with IBM MQ MQI clients
When an error occurs with an IBM MQ MQI client system, error messages are put into the IBM MQ system error files.
- On UNIX and Linux systems, these files are found in the /var/mqm/errors directory
- On Windows, these files are found in the errors subdirectory of the IBM MQ MQI client installation. Usually this directory is C:\Program Files\IBM\MQ\errors.
- On IBM i, these files are found in the /QIBM/UserData/mqm/errors directory
Certain client errors can also be recorded in the IBM MQ error files associated with the server to which the client was connected.
Parent topic: IBM MQ Troubleshooting and support