Hello all, While I am trying to test AMQ message expiration, I encountered some problems. I send a message to a Queue every 10ms with the following code: producer.send(queue, message, DeliveryMode.PERSISTENT, Message.DEFAULT_PRIORITY, 10*60*1000). According to my understanding the messages will expire after 10 minutes. But I always get the following error stack trace on AMQ broker and at the same time, the journal folder seems to keep growing.
2007-09-03 10:33:31,093 [m://localhost#3] WARN RegionBroker - Failed to pass expired message to dead letter queue java.lang.NullPointerException at org.apache.activemq.util.BrokerSupport.resend(BrokerSupport.java:55) at org.apache.activemq.broker.region.RegionBroker.sendToDeadLetterQueue( RegionBroker.java:667) at org.apache.activemq.broker.BrokerFilter.sendToDeadLetterQueue( BrokerFilter.java:257) at org.apache.activemq.broker.BrokerFilter.sendToDeadLetterQueue( BrokerFilter.java:257) at org.apache.activemq.broker.BrokerFilter.sendToDeadLetterQueue( BrokerFilter.java:257) at org.apache.activemq.broker.MutableBrokerFilter.sendToDeadLetterQueue( MutableBrokerFilter.java:273) at org.apache.activemq.broker.region.RegionBroker.messageExpired( RegionBroker.java:636) at org.apache.activemq.broker.BrokerFilter.messageExpired(BrokerFilter.java :253) at org.apache.activemq.advisory.AdvisoryBroker.messageExpired( AdvisoryBroker.java:237) at org.apache.activemq.broker.BrokerFilter.messageExpired(BrokerFilter.java :253) at org.apache.activemq.broker.MutableBrokerFilter.messageExpired( MutableBrokerFilter.java:269) at org.apache.activemq.broker.region.Queue.doPageIn(Queue.java:1027) at org.apache.activemq.broker.region.Queue.doPageIn(Queue.java:1002) at org.apache.activemq.broker.region.Queue.addSubscription(Queue.java:228) at org.apache.activemq.broker.region.AbstractRegion.addConsumer( AbstractRegion.java:262) at org.apache.activemq.broker.region.RegionBroker.addConsumer( RegionBroker.java:335) at org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java :85) at org.apache.activemq.advisory.AdvisoryBroker.addConsumer( AdvisoryBroker.java:79) at org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java :85) at org.apache.activemq.broker.MutableBrokerFilter.addConsumer( MutableBrokerFilter.java:95) at org.apache.activemq.broker.TransportConnection.processAddConsumer( TransportConnection.java:565) at org.apache.activemq.command.ConsumerInfo.visit(ConsumerInfo.java:334) at org.apache.activemq.broker.TransportConnection.service( TransportConnection.java:320) at org.apache.activemq.broker.TransportConnection$1.onCommand( TransportConnection.java:216) at org.apache.activemq.transport.ResponseCorrelator.onCommand( ResponseCorrelator.java:100) at org.apache.activemq.transport.TransportFilter.onCommand( TransportFilter.java:67) at org.apache.activemq.transport.vm.VMTransport.iterate(VMTransport.java :233) at org.apache.activemq.thread.DedicatedTaskRunner.runTask( DedicatedTaskRunner.java:98) at org.apache.activemq.thread.DedicatedTaskRunner$1.run( DedicatedTaskRunner.java:36) Does it mean that the DLQ strategy was inproperly configured? In our application, I don't want expired messages to be sent to DLQs. How should I configure it? Or could it be a bug in the latest snapshot? The AMQ version is :apache-activemq-5.0-20070827.124842-62 Thank you in advance.