AMQ9206 or AMQ9208 10054 (X'2746') econnreset from TCP/IP on an MQ client channel connection to a local server
You are receiving an error 10054 (X'2746') econnreset intermittently from TCP/IP on an IBM MQ client channel connection to a local server.
AMQ9208: Error on receive from host <host>.
EXPLANATION: An error occurred receiving data from <host> over TCP/IP. This may be due to a communications failure.
ACTION: The return code from the TCP/IP recv() call was 10054 (X'2746'). Record these values and tell the systems administrator.
For WMQ 7.1.0, the same scenario results in:
AMQ9209: Connection to host <host> for channel <channel> closed.
The return codes for various operating systems for ECONNRESET Connection reset by peer:
ECONNRESET return codes
|Operating system||Decimal code||Hexadecimal code|
|IBM i (iSeries)||3426||xD62|
Any client connection, local or remote, will fail with econnreset if the queue manager is ended while the client has an active CLNTCONN channel connected to the queue manager.
Diagnosing The Problem
ECONNRESET -- Connection reset by peer. This occurs when an established connection is shut down for some reason by the remote computer.
This usually indicates a problem in the TCP/IP network. There are numerous reasons TCP/IP will sent a reset.
Reasons For TCP/IP Resets
- An application request a connect to a port and ip address for which no server is Listening
- An application closes a socket with data still in the application receive buffer. The connection is reset to allow the remote partner to know that the data was not delivered.
- Any data that arrives for a connection that has been closed can cause a reset.
- An application closes a socket and sets the linger socket option to zero. This will notify TCP/IP that the connection should not linger.
Note: MQ does not code the linger socket option, therefore MQ will not cause a reset.
- An invalid tcp segment arrives for a connection, for example, a bad acknowledge or sequence number can cause a reset.
- The connect request times out. TCP gives up trying to connect to an particular port and ip address and resets the connection.
- A Firewall can reset connections if the packet does not adhere to the firewall rules and policies. For example a source or destination port or ipaddress does not match the firewall rule or policy.
- The retransmit timer expires. TCP gives up trying to retransmit a packet and resets the connection.
- A bad hardware device can cause resets
Diagnostic hints and tips:
Consult with your network administrator who can use TCP/IP packet and a sniffer traces to determine why the reset occurred.
Resolving The Problem
This is working as designed. IBM MQ can not prevent users from ending their queue manager.
If the application receives a reason code such as MQRC_CONNECTION_BROKEN (MQRC 2009), it can periodically attempt to reconnect again with MQCONN or MQCONNX.
IBM MQ 7.0.1 introduced a function called Automatic Client Reconnection that you can implement.
For other possible causes of ECONNRESET see Return code 00000461 for TCP/IP.
IBM MQ WebSphere MQ MQ
More support for:
Component: Channels LU62 / TCP, ">More...
Software version: 7.0, 7.0.1, 7.1, 7.5, 8.0, 9.0, 9.1
Operating system(s): AIX, HP-UX, IBM i, Linux, OpenVMS, Solaris, Windows, z/OS
Reference #: 1106218
Modified date: 13 August 2018
Translate this page: