Quantcast
Viewing latest article 5
Browse Latest Browse All 51

Connections Not Release - DeafultMessageListenerContainer in Websphere

In one of our applications for our banking client, Wer are using the Spring DefaultMessageListenerContainer to get messages from a Queue in Websphere. We have configured the queue and a QueconnectionFactory in Websphere.

After a few hours, we see that the connections are not being released and thread are hanging out in the middle.

of late, we have also been getting OutofMemory errors & when we analyse the Heap dump, we see a steep spike in the memory consumption.

We are using Websphere Application Server 7.0.0.25.
I have also enabled the J2C entries in Websphere and have analysed the trace.log and we see that connections are not getting release.

I have pasted the stacktrace below.
com.ibm.ejs.j2c.ConnectionManager.allocateConnecti on(ConnectionManager.java:900)

com.ibm.ejs.jms.JMSQueueConnectionHandle.createQue ueSession(JMSQueueConnectionHandle.java:209)

org.springframework.jms.listener.DefaultMessageLis tenerContainer102.createSession(DefaultMessageList enerContainer102.java:83)

org.springframework.jms.listener.DefaultMessageLis tenerContainer.access$1200(DefaultMessageListenerC ontainer.java:116)

org.springframework.jms.listener.DefaultMessageLis tenerContainer$AsyncMessageListenerInvoker.initRes ourcesIfNecessary(DefaultMessageListenerContainer. java:1002)

org.springframework.jms.listener.DefaultMessageLis tenerContainer$AsyncMessageListenerInvoker.invokeL istener(DefaultMessageListenerContainer.java:981)

org.springframework.jms.listener.DefaultMessageLis tenerContainer$AsyncMessageListenerInvoker.execute OngoingLoop(DefaultMessageListenerContainer.java:9 74)

org.springframework.jms.listener.DefaultMessageLis tenerContainer$AsyncMessageListenerInvoker.run(Def aultMessageListenerContainer.java:876)

java.lang.Thread.run(Thread.java:738)

I have also pasted the entry from Spring-services.xml.

<bean id="fxowlistenerContainer" class="com.bank.watch.mdb.ModifiedMessageListenerC ontainer102">
<property name="connectionFactory" ref="connectionFactory" />
<property name="destinationResolver" ref="qfdestinationResolver" />
<property name="destinationName" value="#cw{CW_FXOW_REQUEST_Q_JNDINAME}" />
<property name="messageListener" ref="cwOWMsgListener" />
<property name="recoveryInterval" value="60000" />
<property name="mdbConnectMsg" value="#cw{CW_FXOW_CONNECT_ERRMSG}" />
<property name="concurrentConsumers" value="2" />
<property name="maxConcurrentConsumers" value="5" />
<property name="stopListen" value="#cw{CW_HK_FXOW_STOP_LISTEN_FLAG}" />
<property name="listenerStopMsg" value="#cw{FXOW_LISTENER_STOP_MSG}" />
<property name="country" value="HK" />
</bean>

<bean id="connectionFactory1" class="org.springframework.jndi.JndiObjectFactoryB ean">
- <property name="jndiTemplate">
<ref bean="cwjndiTemplate" />
</property>
- <property name="jndiName">
<value>#cw{CW_URS_LIVERATE_QCF}</value>
</property>
<property name="cache" value="true" />
<property name="lookupOnStartup" value="false" />
<property name="proxyInterface" value="javax.jms.QueueConnectionFactory" />
</bean>

We have been trying hard to resolve this, But without much success.

Viewing latest article 5
Browse Latest Browse All 51

Trending Articles