You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by Ruben de Gooijer <r....@onehippo.com> on 2009/05/08 02:21:18 UTC

Transaction has not been started, DLQ

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

Re: Transaction has not been started, DLQ

Posted by Ruben de Gooijer <r....@onehippo.com>.
No one? I'm still having this problem...

On Thu, May 7, 2009 at 5:21 PM, Ruben de Gooijer
<r....@onehippo.com>wrote:

> 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
>