0 Replies Latest reply on Oct 31, 2017 12:11 PM by med.amd

    Random wrong channel/hostname/port when connecting to queue

    med.amd

      Hello,

       

      The application tries to connect to IBM MQ Queue using wrong connection parameters (hostname or port or channel) when sending a message on the queue .

       

      It seems that these parameters are default IBM MQ parameters : Exp: localhost / 1414 /

       

      This is a random behavior, the workaround is to restart the jboss instance. Some queue are use as MDB queues.

       

      The parameters are defined in the standalone.xml and there are no default values.

       

      Is there any known issue related to this behavior? And what are the workarounds?

       

      Jboss version : 6.0

       

      IBM MQ Ressource Adapter : 7.5

       

      WARN  [org.jboss.jca.core.connectionmanager.pool.strategy.PoolByCri] (default-threads - 39) IJ000604: Throwable while attempting to get a new connection: null: com.ibm.mq.connector.DetailedResourceException: MQJCA1011: Failed to allocate a JMS connection., error code: MQJCA1011 An internal error caused an attempt to allocate a connection to fail. See the linked exception for details of the failure.

      at com.ibm.mq.connector.services.JCAExceptionBuilder.buildException(JCAExceptionBuilder.java:129) [com.ibm.mq.connector.jar:7.5.0.4-p750-004-140807]

      at com.ibm.mq.connector.services.JCAExceptionBuilder.buildException(JCAExceptionBuilder.java:105) [com.ibm.mq.connector.jar:7.5.0.4-p750-004-140807]

      at com.ibm.mq.connector.ConnectionBuilder.createConnection(ConnectionBuilder.java:202) [com.ibm.mq.connector.jar:7.5.0.4-p750-004-140807]

      at com.ibm.mq.connector.outbound.ManagedQueueConnectionFactoryImpl.createConnection(ManagedQueueConnectionFactoryImpl.java:172) [com.ibm.mq.connector.jar:7.5.0.4-p750-004-140807]

      at com.ibm.mq.connector.outbound.ManagedConnectionImpl.<init>(ManagedConnectionImpl.java:151) [com.ibm.mq.connector.jar:7.5.0.4-p750-004-140807]

      at com.ibm.mq.connector.outbound.ManagedQueueConnectionImpl.<init>(ManagedQueueConnectionImpl.java:71) [com.ibm.mq.connector.jar:7.5.0.4-p750-004-140807]

      at com.ibm.mq.connector.outbound.ManagedQueueConnectionFactoryImpl.createManagedConnection(ManagedQueueConnectionFactoryImpl.java:143) [com.ibm.mq.connector.jar:7.5.0.4-p750-004-140807]

      at org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreArrayListManagedConnectionPool.createConnectionEventListener(SemaphoreArrayListManagedConnectionPool.java:761) [ironjacamar-core-impl-1.0.11.Final-redhat-1.jar:1.0.11.Final-redhat-1]

      at org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreArrayListManagedConnectionPool.getConnection(SemaphoreArrayListManagedConnectionPool.java:343) [ironjacamar-core-impl-1.0.11.Final-redhat-1.jar:1.0.11.Final-redhat-1]

      at org.jboss.jca.core.connectionmanager.pool.AbstractPool.getTransactionNewConnection(AbstractPool.java:495) [ironjacamar-core-impl-1.0.11.Final-redhat-1.jar:1.0.11.Final-redhat-1]

      at org.jboss.jca.core.connectionmanager.pool.AbstractPool.getConnection(AbstractPool.java:374) [ironjacamar-core-impl-1.0.11.Final-redhat-1.jar:1.0.11.Final-redhat-1]

      at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.getManagedConnection(AbstractConnectionManager.java:329) [ironjacamar-core-impl-1.0.11.Final-redhat-1.jar:1.0.11.Final-redhat-1]

      at org.jboss.jca.core.connectionmanager.tx.TxConnectionManagerImpl.getManagedConnection(TxConnectionManagerImpl.java:368) [ironjacamar-core-impl-1.0.11.Final-redhat-1.jar:1.0.11.Final-redhat-1]

      at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:464) [ironjacamar-core-impl-1.0.11.Final-redhat-1.jar:1.0.11.Final-redhat-1]

      at com.ibm.mq.connector.outbound.ConnectionFactoryImpl.createManagedJMSConnection(ConnectionFactoryImpl.java:194) [com.ibm.mq.connector.jar:7.5.0.4-p750-004-140807]

      at com.ibm.mq.connector.outbound.ConnectionFactoryImpl.createConnectionInternal(ConnectionFactoryImpl.java:153) [com.ibm.mq.connector.jar:7.5.0.4-p750-004-140807]

      at com.ibm.mq.connector.outbound.QueueConnectionFactoryImpl.createQueueConnection(QueueConnectionFactoryImpl.java:137) [com.ibm.mq.connector.jar:7.5.0.4-p750-004-140807]

      at com.ibm.mq.connector.outbound.QueueConnectionFactoryImpl.createQueueConnection(QueueConnectionFactoryImpl.java:128) [com.ibm.mq.connector.jar:7.5.0.4-p750-004-140807]

      at com.core.frm.Jms.getQueueConnection(Jms.java:299) [frm-jms-1.2.jar:]

      .........

       

       

      Caused by: com.ibm.msg.client.jms.DetailedIllegalStateException: JMSWMQ0018: Failed to connect to queue manager 'QMTTTDVD' with connection mode 'Client' and host name 'localhost(50245)'.

      Check the queue manager is started and if running in client mode, check there is a listener running. Please see the linked exception for more information.

      at com.ibm.msg.client.wmq.common.internal.Reason.reasonToException(Reason.java:479) [com.ibm.msg.client.wmq.common.jar:]

      at com.ibm.msg.client.wmq.common.internal.Reason.createException(Reason.java:221) [com.ibm.msg.client.wmq.common.jar:]

      at com.ibm.msg.client.wmq.internal.WMQConnection.<init>(WMQConnection.java:428) [com.ibm.msg.client.wmq.jar:]

      at com.ibm.msg.client.wmq.internal.WMQXAConnection.<init>(WMQXAConnection.java:75) [com.ibm.msg.client.wmq.jar:]

      at com.ibm.msg.client.wmq.factories.WMQXAConnectionFactory.createV7ProviderConnection(WMQXAConnectionFactory.java:195) [com.ibm.msg.client.wmq.factories.jar:]

      at com.ibm.msg.client.wmq.factories.WMQConnectionFactory.createProviderConnection(WMQConnectionFactory.java:6383) [com.ibm.msg.client.wmq.factories.jar:]

      at com.ibm.msg.client.wmq.factories.WMQXAConnectionFactory.createProviderXAConnection(WMQXAConnectionFactory.java:107) [com.ibm.msg.client.wmq.factories.jar:]

      at com.ibm.msg.client.jms.admin.JmsConnectionFactoryImpl.createXAConnectionInternal(JmsConnectionFactoryImpl.java:363) [com.ibm.msg.client.jms.internal.jar:]

      at com.ibm.mq.jms.MQXAQueueConnectionFactory.createXAQueueConnection(MQXAQueueConnectionFactory.java:184) [com.ibm.mqjms.jar:7.5.0.4 - p750-004-140807]

      at com.ibm.mq.connector.ConnectionBuilder.createConnection(ConnectionBuilder.java:169) [com.ibm.mq.connector.jar:7.5.0.4-p750-004-140807]

      ... 426 more

      Caused by: com.ibm.mq.MQException: JMSCMQ0001: WebSphere MQ call failed with compcode '2' ('MQCC_FAILED') reason '2538' ('MQRC_HOST_NOT_AVAILABLE').

      at com.ibm.msg.client.wmq.common.internal.Reason.createException(Reason.java:209) [com.ibm.msg.client.wmq.common.jar:]

      ... 434 more

      Caused by: com.ibm.mq.jmqi.JmqiException: CC=2;RC=2538;AMQ9204: Connection to host 'localhost(50245)' rejected. [1=com.ibm.mq.jmqi.JmqiException[CC=2;RC=2538;AMQ9213: A communications error for  occurred. [1=java.net.ConnectException[Connection refused],3=localhost]],3=localhost(50245),5=RemoteTCPConnection.connnectUsingLocalAddress]

      at com.ibm.mq.jmqi.remote.api.RemoteFAP.jmqiConnect(RemoteFAP.java:2062) [com.ibm.mq.jmqi.remote.jar:7.5.0.4 - p750-004-140807]

      at com.ibm.mq.jmqi.remote.api.RemoteFAP.jmqiConnect(RemoteFAP.java:1226) [com.ibm.mq.jmqi.remote.jar:7.5.0.4 - p750-004-140807]

      at com.ibm.msg.client.wmq.internal.WMQConnection.<init>(WMQConnection.java:348) [com.ibm.msg.client.wmq.jar:]

      ... 433 more

      Caused by: com.ibm.mq.jmqi.JmqiException: CC=2;RC=2538;AMQ9213: A communications error for  occurred. [1=java.net.ConnectException[Connection refused],3=]

      at com.ibm.mq.jmqi.remote.impl.RemoteTCPConnection.connnectUsingLocalAddress(RemoteTCPConnection.java:810) [com.ibm.mq.jmqi.remote.jar:7.5.0.4 - p750-004-140807]

      at com.ibm.mq.jmqi.remote.impl.RemoteTCPConnection.protocolConnect(RemoteTCPConnection.java:1140) [com.ibm.mq.jmqi.remote.jar:7.5.0.4 - p750-004-140807]

      at com.ibm.mq.jmqi.remote.impl.RemoteConnection.connect(RemoteConnection.java:724) [com.ibm.mq.jmqi.remote.jar:7.5.0.4 - p750-004-140807]

      at com.ibm.mq.jmqi.remote.impl.RemoteConnectionSpecification.getSessionFromNewConnection(RemoteConnectionSpecification.java:400) [com.ibm.mq.jmqi.remote.jar:7.5.0.4 - p750-004-140807]

      at com.ibm.mq.jmqi.remote.impl.RemoteConnectionSpecification.getSession(RemoteConnectionSpecification.java:299) [com.ibm.mq.jmqi.remote.jar:7.5.0.4 - p750-004-140807]

      at com.ibm.mq.jmqi.remote.impl.RemoteConnectionPool.getSession(RemoteConnectionPool.java:164) [com.ibm.mq.jmqi.remote.jar:7.5.0.4 - p750-004-140807]

      at com.ibm.mq.jmqi.remote.api.RemoteFAP.jmqiConnect(RemoteFAP.java:1599) [com.ibm.mq.jmqi.remote.jar:7.5.0.4 - p750-004-140807]

      ... 435 more

      Caused by: java.net.ConnectException: Connection refused

      at java.net.PlainSocketImpl.socketConnect(Native Method) [rt.jar:1.7.0_99]

      at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339) [rt.jar:1.7.0_99]

      at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200) [rt.jar:1.7.0_99]

      at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182) [rt.jar:1.7.0_99]

      at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) [rt.jar:1.7.0_99]

      at java.net.Socket.connect(Socket.java:579) [rt.jar:1.7.0_99]

      at java.net.Socket.connect(Socket.java:528) [rt.jar:1.7.0_99]

      at com.ibm.mq.jmqi.remote.impl.RemoteTCPConnection$5.run(RemoteTCPConnection.java:795) [com.ibm.mq.jmqi.remote.jar:7.5.0.4 - p750-004-140807]

      at com.ibm.mq.jmqi.remote.impl.RemoteTCPConnection$5.run(RemoteTCPConnection.java:789) [com.ibm.mq.jmqi.remote.jar:7.5.0.4 - p750-004-140807]

      at java.security.AccessController.doPrivileged(Native Method) [rt.jar:1.7.0_99]

      at com.ibm.mq.jmqi.remote.impl.RemoteTCPConnection.connnectUsingLocalAddress(RemoteTCPConnection.java:787) [com.ibm.mq.jmqi.remote.jar:7.5.0.4 - p750-004-140807]

       

      Thank you.