Our system consists of one virtualized VMWare guest server running Red Hat Enterprise
Server 64 bit, Java HotSpot(TM) 64-Bit Server VM
and JBoss 5.1.0.GA. The machine runs a single instance of JBoss with Postgresql (running on a different server).
The JBOSS instance is dedicated to processing JMS Messages for 3 tomcat based web application clients again running on different servers.
We have made no other changes to JBOSS Messaging Postgresql Presistence manager's configuration other then disabling 'ChannelFactoryName'
<!-- <depends optional-attribute-name="ChannelFactoryName">jboss.jgroups:service=ChannelFactory</depends> -->
(referred the following : http://community.jboss.org/message/204473#204473 )
The JMS clients are all Spring based web applications that consumer messages from one of the queues on the jboss server.
We deployed this configuration to production this Monday. So far the server has been very stable. The only issue that we've run into is that there are (now) about 7 messages that are stuck in the 'Delivering' state since the last 3 days. So basically everytime we look at the queue's status using the jmx-console, it shows MessageCount is stuck at 7 and DeliveringCount is also stuck at 7. The tomcat servers have recevied several other messages since we've noticed these stuck messages. We tried to remove these messages using the 'removeAllMessages' operation, but we then saw an error in the jboss logs basically stating that messages that are in a DeliveringState cannot be removed.
I would like to know if someone can please help me find a way to delete these messages. Also we have not been able to reproduce this behavior in our development / test enviroment. So we're wondering if this could have been caused by some intermittent communication failure (network not available etc) between the Jboss Servers and Tomcat Servers. Does anyone know of any such issues with the JBM version (I believe it's 1.4.3 GA) bundled with JBOSS AS 5.1.0.
We do plan to upgrade to HornetQ in the near future (there is a critical bug in the current Final version of HornetQ that we're wait to be resolved in the next version before we migrate over the HornetQ).
So if anyboby can shed some light on what could cause messages to end up in a DeliveryState and what steps I can take to remove these messages from the queue, it will be much appreciated.
Thanks in advance.