You are running WebSphere MQ on Solaris. You have two machines, one with a MQ client, and the other machine with a queue manager. You have a client application which checks to see if the queue manager is available, by doing a MQCONNX.
You have noticed a delay in the response from the MQCONNX. In the situation where the queue manager is stopped, your client receives a reason code 2059 MQRC_Q_MGR_NOT_AVAILABLE, but this is taking as long as 4 minutes.
Symptom
In the amqerr01.log of the client the following message is seen:
AMQ9202: Remote host '11.2.34.555 (1414)' not available, retry later.
EXPLANATION: The attempt to allocate a conversation using TCP/IP to host '12.3.45.678(1414)' was not successful. However the error may be a transitory one and it may be possible to successfully allocate a TCP/IP conversation later.
ACTION: Try the connection again later. If the failure persists, record the error values and contact your systems administrator. The return code from TCP/IP is 145 (X'91'). The reason for the failure may be that this host cannot reach the destination host. It may also be possible that the listening program at host '11.2.34.555 (1414)' was not running. If this is the case, perform the relevant operations to start the TCP/IP listening program, and try again.
Cause
When a client issues a MQCONNX to connect to a queue manager, this makes a tcpip connect() call. If the tcpip connect() can not complete because the remote host is not available, then it will eventually timeout and return a tcpip reason code x'91' (145, ETIMEDOUT).
The amount of time it takes for the timeout to occur is set by parameters in TCP/IP.
Resolving the problem
The Solaris ndd settable parameter tcp_ip_abort_cinterval defaults to a setting of 180000 milliseconds (3 minutes). Setting this to less than 1 minute allows the MQ channels to timeout in a shorter time interval. This applies to the case where the target node is removed from the network.
If you need assistance in changing the tcp_ip_abort_cinterval parameter, then you should consult your system administrator or Solaris support.
Note:
The corresponding Microsoft Windows registry parameters should be:
HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\TcpMaxConnectRetransmissions
and
HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\interface-name\TcpInitialRTT
You have noticed a delay in the response from the MQCONNX. In the situation where the queue manager is stopped, your client receives a reason code 2059 MQRC_Q_MGR_NOT_AVAILABLE, but this is taking as long as 4 minutes.
Symptom
In the amqerr01.log of the client the following message is seen:
AMQ9202: Remote host '11.2.34.555 (1414)' not available, retry later.
EXPLANATION: The attempt to allocate a conversation using TCP/IP to host '12.3.45.678(1414)' was not successful. However the error may be a transitory one and it may be possible to successfully allocate a TCP/IP conversation later.
ACTION: Try the connection again later. If the failure persists, record the error values and contact your systems administrator. The return code from TCP/IP is 145 (X'91'). The reason for the failure may be that this host cannot reach the destination host. It may also be possible that the listening program at host '11.2.34.555 (1414)' was not running. If this is the case, perform the relevant operations to start the TCP/IP listening program, and try again.
Cause
When a client issues a MQCONNX to connect to a queue manager, this makes a tcpip connect() call. If the tcpip connect() can not complete because the remote host is not available, then it will eventually timeout and return a tcpip reason code x'91' (145, ETIMEDOUT).
The amount of time it takes for the timeout to occur is set by parameters in TCP/IP.
Resolving the problem
The Solaris ndd settable parameter tcp_ip_abort_cinterval defaults to a setting of 180000 milliseconds (3 minutes). Setting this to less than 1 minute allows the MQ channels to timeout in a shorter time interval. This applies to the case where the target node is removed from the network.
If you need assistance in changing the tcp_ip_abort_cinterval parameter, then you should consult your system administrator or Solaris support.
Note:
The corresponding Microsoft Windows registry parameters should be:
HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\TcpMaxConnectRetransmissions
and
HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\interface-name\TcpInitialRTT
Comments
Post a Comment