Was that a migration from 5.3.x to 5.4.x? It looks like it is failing on the first use of the DLQ which is odd, as if I cannot read the index for that destination. Rebuilding the index would probably help, but I would be great to figure if it is reproducible.
On 17 April 2011 13:18, Martin C. <mart...@gmx.at> wrote: > Hi, > > in one of my installations using 5.4.2 broker, I got the following > exception, after processing of a message failed several times in a row > within XA transactions. The message never appeared in a DLQ and seems > to have been lost. Any ideas what could be causing this? > > 2011-04-17 13:41:59,353 | WARN | Caught an exception sending to DLQ: > Message e041e768-ee0e-4cac-0f10-fc58d7c7409d:0:11:11 dropped=false > acked=false locked=true | > org.apache.activemq.broker.region.RegionBroker | ActiveMQ Transport: > ssl:///172.17.1.5:48447 > java.lang.NullPointerException > at > org.apache.activemq.store.kahadb.MessageDatabase$MessageOrderIndex.load(MessageDatabase.java:2055) > at > org.apache.activemq.store.kahadb.MessageDatabase.loadStoredDestination(MessageDatabase.java:1529) > at > org.apache.activemq.store.kahadb.MessageDatabase.getStoredDestination(MessageDatabase.java:1484) > at > org.apache.activemq.store.kahadb.KahaDBStore$KahaDBMessageStore$2.execute(KahaDBStore.java:426) > at > org.apache.activemq.store.kahadb.KahaDBStore$KahaDBMessageStore$2.execute(KahaDBStore.java:422) > at org.apache.kahadb.page.Transaction.execute(Transaction.java:751) > at > org.apache.activemq.store.kahadb.KahaDBStore$KahaDBMessageStore.getMessageCount(KahaDBStore.java:421) > at > org.apache.activemq.store.ProxyMessageStore.getMessageCount(ProxyMessageStore.java:84) > at org.apache.activemq.broker.region.Queue$5.<init>(Queue.java:270) > at org.apache.activemq.broker.region.Queue.initialize(Queue.java:269) > at > org.apache.activemq.broker.region.DestinationFactoryImpl.createDestination(DestinationFactoryImpl.java:86) > at > org.apache.activemq.broker.region.AbstractRegion.createDestination(AbstractRegion.java:473) > at > org.apache.activemq.broker.jmx.ManagedQueueRegion.createDestination(ManagedQueueRegion.java:56) > at > org.apache.activemq.broker.region.AbstractRegion.addDestination(AbstractRegion.java:123) > at > org.apache.activemq.broker.region.RegionBroker.addDestination(RegionBroker.java:298) > at > org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.java:145) > at > org.apache.activemq.advisory.AdvisoryBroker.addDestination(AdvisoryBroker.java:157) > at > org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.java:145) > at > org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.java:145) > at > org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.java:145) > at > org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.java:145) > at > org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.java:145) > at > org.apache.activemq.broker.MutableBrokerFilter.addDestination(MutableBrokerFilter.java:151) > at > org.apache.activemq.broker.region.RegionBroker.send(RegionBroker.java:498) > at org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:129) > at > org.apache.activemq.broker.CompositeDestinationBroker.send(CompositeDestinationBroker.java:96) > at > org.apache.activemq.broker.TransactionBroker.send(TransactionBroker.java:227) > at org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:129) > at org.apache.activemq.broker.UserIDBroker.send(UserIDBroker.java:39) > at org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:129) > at org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:129) > at > org.apache.activemq.broker.MutableBrokerFilter.send(MutableBrokerFilter.java:135) > at > org.apache.activemq.util.BrokerSupport.doResend(BrokerSupport.java:67) > at > org.apache.activemq.util.BrokerSupport.resendNoCopy(BrokerSupport.java:38) > at > org.apache.activemq.broker.region.RegionBroker.sendToDeadLetterQueue(RegionBroker.java:830) > at > org.apache.activemq.broker.BrokerFilter.sendToDeadLetterQueue(BrokerFilter.java:261) > at > org.apache.activemq.advisory.AdvisoryBroker.sendToDeadLetterQueue(AdvisoryBroker.java:392) > at > org.apache.activemq.broker.BrokerFilter.sendToDeadLetterQueue(BrokerFilter.java:261) > at > org.apache.activemq.broker.BrokerFilter.sendToDeadLetterQueue(BrokerFilter.java:261) > at > org.apache.activemq.broker.BrokerFilter.sendToDeadLetterQueue(BrokerFilter.java:261) > at > org.apache.activemq.broker.BrokerFilter.sendToDeadLetterQueue(BrokerFilter.java:261) > at > org.apache.activemq.broker.BrokerFilter.sendToDeadLetterQueue(BrokerFilter.java:261) > at > org.apache.activemq.broker.MutableBrokerFilter.sendToDeadLetterQueue(MutableBrokerFilter.java:273) > at > org.apache.activemq.broker.region.PrefetchSubscription.sendToDLQ(PrefetchSubscription.java:458) > at > org.apache.activemq.broker.region.PrefetchSubscription.acknowledge(PrefetchSubscription.java:364) > at > org.apache.activemq.broker.region.AbstractRegion.acknowledge(AbstractRegion.java:383) > at > org.apache.activemq.broker.region.RegionBroker.acknowledge(RegionBroker.java:544) > at > org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:77) > at > org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:77) > at > org.apache.activemq.broker.TransactionBroker.acknowledge(TransactionBroker.java:197) > at > org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:77) > at > org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:77) > at > org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:77) > at > org.apache.activemq.broker.MutableBrokerFilter.acknowledge(MutableBrokerFilter.java:87) > at > org.apache.activemq.broker.TransportConnection.processMessageAck(TransportConnection.java:469) > at org.apache.activemq.command.MessageAck.visit(MessageAck.java:214) > at > org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:311) > at > org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:185) > at > org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:69) > at > org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:113) > at > org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:228) > at > org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:83) > at > org.apache.activemq.transport.tcp.SslTransport.doConsume(SslTransport.java:91) > at > org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:220) > at > org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:202) > at java.lang.Thread.run(Thread.java:662) > > Thanks in advance, > Martin > -- http://blog.garytully.com http://fusesource.com