Hi all,

I am using activemq 5.2.0 (embedded) with locally transacted sessions. When
a message is received by a designated listener and processing the message
fails it will automatically cause the session to rollback. Which in turn
causes activemq to redeliver the message, after a while the message is moved
automatically into the Dead Letter Queue. Although this seems to be working
just fine when I shutdown activemq I get a "Transaction has not been
started." exception. See stacktrace:

javax.jms.JMSException: Transaction
'TX:ID:ruben-laptop-35224-1241741723646-2:0:8' has not been started.
    at
org.apache.activemq.broker.TransactionBroker.getTransaction(TransactionBroker.java:270)
    at
org.apache.activemq.broker.TransactionBroker.acknowledge(TransactionBroker.java:190)
    at
org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:74)
    at
org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:74)
    at
org.apache.activemq.broker.MutableBrokerFilter.acknowledge(MutableBrokerFilter.java:85)
    at
org.apache.activemq.broker.TransportConnection.processMessageAck(TransportConnection.java:456)
    at org.apache.activemq.command.MessageAck.visit(MessageAck.java:205)
    at
org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:305)
    at
org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:179)
    at
org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:104)
    at
org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:68)
    at
org.apache.activemq.transport.vm.VMTransport.iterate(VMTransport.java:205)
    at
org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:122)
    at
org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:43)
    at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
    at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
    at java.lang.Thread.run(Thread.java:595)

This does not occur during the shutdown process when all the message
processing requests succeed.

Any suggestions?

Kind regards,
Ruben

Reply via email to