[blog Post] DSS not consuming messages from JMS Queues

  • By wso2 wso2
  • 31 Jul, 2013

As you know, we can integrate WSO2 Data Services Server with WSO2 Message Broker, in a way that the WSO2 Data Services Server consumes messages from the queues of the Message Broker.

When it comes to large scale, like more than 100 data services consuming messages from Message Broker, it will throw the following exception and will not start to consume messages from queues.

WARN {org.apache.axis2.transport.jms.JMSListener} - Polling tasks on destination : xxx of type queue for service xxx have not yet started after 3 seconds.

The reason behind this warning and the situation is controlled limitation of the system. In the Data Services Server, the number of threads that consume messages from jms queues from the implementation to 100 has been limited.

It has been done by adding a configurable parameter to the start up script ( wso2server.sh) of the server. By default, the value of the parameter is snd_t_core=100. If any one gets the above exception in a situation like more than 100 consumers, you can increase this parameter to overcome that situation as shown below:

-Dcom.sun.jndi.ldap.connect.pool.authentication=simple \

-Dcom.sun.jndi.ldap.connect.pool.timeout=3000 \

-Dorg.terracotta.quartz.skipUpdateCheck=true \

-Dsnd_t_core=200 \

-Dsnd_t_max=250 \

-Djava.security.egd=file:/dev/./urandom \

Source : https://shammijayasinghe.blogspot.com/2013/07/dss-not-consuming-messages-from-jms.html