Hi,
I am having a MDB listen to a broker of a SonicMQ Queue v6.1. JBOSS 4.2.1 EA. For certain adhoc cases the messages are not getting removed from the Queue after being processed by onMessage() method. The same message keeps processing repeatedly. Changing the log level to TRACE I could find the following important clue.
The trace for one that dint repeat:
07/08/08 10:34:07 JMS SessionPool Worker-0 TRACE - org.jboss.jms.asf.StdServerSession.onMessage - Commiting the JMS transaction 07/08/08 10:34:07 JMS SessionPool Worker-0 TRACE - org.jboss.jms.asf.StdServerSession.onMessage - onMessage done 07/08/08 10:34:07 JMS SessionPool Worker-0 TRACE - org.jboss.jms.asf.StdServerSession.run - recycling... 07/08/08 10:34:07 JMS SessionPool Worker-0 TRACE - org.jboss.jms.asf.StdServerSessionPool.recycle - recycled server session: org.jboss.jms.asf.StdServerSession@23cd23cd 07/08/08 10:34:07 JMS SessionPool Worker-0 TRACE - org.jboss.jms.asf.StdServerSession.run - finished run
07/08/08 14:13:30 JMS SessionPool Worker-0 TRACE - org.jboss.jms.asf.StdServerSession.onMessage - org.jboss.jms.asf.StdServerSession@16a916a9transaction already ended 07/08/08 14:13:30 JMS SessionPool Worker-0 TRACE - org.jboss.jms.asf.StdServerSession.onMessage - onMessage done 07/08/08 14:13:30 JMS SessionPool Worker-0 TRACE - org.jboss.jms.asf.StdServerSession.run - recycling... 07/08/08 14:13:31 JMS SessionPool Worker-0 TRACE - org.jboss.jms.asf.StdServerSessionPool.recycle - recycled server session: org.jboss.jms.asf.StdServerSession@16a916a9 07/08/08 14:13:31 JMS SessionPool Worker-0 TRACE - org.jboss.jms.asf.StdServerSession.run - finished run 07/08/08 12:05:04 JMS SessionPool Worker-1 TRACE - org.jboss.jms.asf.StdServerSession.onMessage - onMessage running (pool, session, xaSession, useLocalTX): , , null, false
The transaction is not committing, it is rolling back and so the messages are
redelivered.
The trace logging you show is just the normal ServerSessionPool events.