IBM Support

IBM MQ call failed with compcode '2' ('MQCC_FAILED') reason '2009' ('MQRC_CONNECTION_BROKEN')

General Page

Periodic MQRC_CONNECTION_BROKEN error while publishing messages to the JMS queue.

The connection may be broken for a number of different reasons. The return code (i.e. 2009/MQRC_CONNECTION_BROKEN) indicates that something prevented a successful connection to the Queue Manager. The most common causes for this are the following are:

1. A firewall that is terminating the connection

2. An IOException that causes the socket to be closed

3. An explicit action to cause the socket to be closed by one end

4. The queue manager is offline

5. The maximum number of channels allowed by the queue manager are open

6. A configuration problem in the Queue Connection Factory (QCF)

Additional details are available here: https://www.ibm.com/support/pages/mq-connection-terminating-error-code-2009

By default, all of Sterling Order Management JMS operations has retry logic within same transaction boundary; however, some of the custom services may not be configured with retries. As following configuration can be adjusted:

  1. By default all integration servers have one default background thread to reprocess the failed transactions. However, service/integration needs to have the re-processible flag enabled:
     Reprocess
  2. Configure Retry Interval and Number of Retries JMS Sender:
    • Retry Interval (milliseconds): In the event that the connection to the primary JMS server is lost, enter the amount of time between attempts to re-establish contact with the primary JMS server. This parameter is used in conjunction with the Number of Retries parameter. The default value is 0 which means no delay time between retry attempts.
    • Number of Retries: In the event that the connection to the primary JMS server is lost, enter the number of attempts to re-establish contact with the primary JMS server before failing over to the backup JMS server, if enabled, or throwing an exception. This parameter is used in conjunction with the Retry Interval parameter. The default value is 0 which means there are no retries if the connection is lost and either failover occurs, if enabled, or an exception is thrown immediately.

      Application Manager > Application Platform > General > General  > Go to Service Definition from left navigation

       Retry
      Note: Any configuration change made directly to production could get overwritten by CDT, so please make sure to persist this change on MC environment.

[{"Type":"MASTER","Line of Business":{"code":"LOB59","label":"Sustainability Software"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SS6PEW","label":"IBM Sterling Order Management"},"ARM Category":[{"code":"a8m0z000000cy06AAA","label":"Services and MQ"}],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All Versions"}]

Document Information

Modified date:
08 July 2022

UID

ibm16601679