NullPointerException in pure/master slave setup when expired messages sent to 
DLQ
---------------------------------------------------------------------------------

                 Key: AMQ-1987
                 URL: https://issues.apache.org/activemq/browse/AMQ-1987
             Project: ActiveMQ
          Issue Type: Bug
          Components: Broker
         Environment: java version "1.6.0_07" on Linux
Client is JBoss 4.2.3 GA with ActiveMQ resource adapter (5.2.0RC2)

ActiveMQ version 5.3.0-SNAPSHOT rev 708031 (but I had the same with rev 706043)

            Reporter: Hans Bausewein


============ on the master
2008-10-26 22:02:40,752 [127.0.0.1:49166] DEBUG AMQMessageStore - Journalled 
transacted message add for:
ID:master.cluster-34437-1225054915674-0:7:8:1:1, at: offset = 249047, file = 1, 
size = 397, type = 1 

2008-10-26 22:02:41,624 [127.0.0.1:49166] DEBUG AMQMessageStore - Transacted 
message add commit for:
ID:master.cluster-34437-1225054915674-0:7:8:1:1, at: offset = 249047, file = 1, 
size = 397, type = 1

2008-10-26 22:02:41,625 [127.0.0.1:49166] DEBUG RegionBroker - Message expired 
ActiveMQTextMessage {commandId = 2689, responseRequired =
true, messageId = 
ID:master.cluster-34437-1225054915674-0:7:8:1:1,originalDestination = null, 
originalTransactionId = null, producerId =
ID:master.cluster-34437-1225054915674-0:7:8:1, destination =queue://queue.B, 
transactionId =
XID:131075:312d2d32613062356562303a653034643a34393034646161393a333466:2d32613062356562303a653034643a34393034646161393a333534,
expiration = 1225054961622, timestamp = 1225054960622, arrival = 0,brokerInTime 
= 1225054960689, brokerOutTime = 0, correlationId = null,
replyTo = null, persistent = true, type = null, priority = 4, groupID = null, 
groupSequence = 0, targetConsumerId = null, compressed = false, userID
= null, content = null, marshalledProperties = null, dataStructure = null, 
redeliveryCounter = 0, size = 1073, properties = null, readOnlyProperties = 
false, readOnlyBody = false, droppable = false, text = hello queue A 40 times 
processed by: 24266834}

2008-10-26 22:02:41,639 [127.0.0.1:49166] ERROR MasterBroker                   
- Slave Failed
java.lang.NullPointerException
        at org.apache.activemq.broker.region.Queue.send(Queue.java:328)
        at 
org.apache.activemq.broker.region.AbstractRegion.send(AbstractRegion.java:350)
        at 
org.apache.activemq.broker.region.RegionBroker.send(RegionBroker.java:437)
        at 
org.apache.activemq.broker.TransactionBroker.send(TransactionBroker.java:224)
        at org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:126)
        at 
org.apache.activemq.broker.CompositeDestinationBroker.send(CompositeDestinationBroker.java:95)
        at 
org.apache.activemq.broker.MutableBrokerFilter.send(MutableBrokerFilter.java:133)
        at 
org.apache.activemq.broker.TransportConnection.processMessage(TransportConnection.java:450)
        at 
org.apache.activemq.command.ActiveMQMessage.visit(ActiveMQMessage.java:639)
        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.DedicatedTaskRunner.runTask(DedicatedTaskRunner.java:98)
        at 
org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner.java:36)

2008-10-26 22:02:41,647 [127.0.0.1:49166] DEBUG AMQMessageStore                
- Journalled message add for:
ID:master.cluster-34437-1225054915674-0:7:8:1:1, at: offset = 285321, file = 1, 
size = 447, type = 1

2008-10-26 22:02:41,642 [127.0.0.1:49166] DEBUG AbstractRegion                 
- Adding destination: queue://queue.DLQ
2008-10-26 22:02:41,646 [127.0.0.1:49166] DEBUG AMQMessageStore                
- flush starting ...

============ On the slave:

2008-10-26 22:02:40,688 [.cluster#1] DEBUG AMQMessageStore
- Journalled transacted message add for: 
ID:master.cluster-34437-1225054915674-0:7:8:1:1, at: offset = 244149, file = 1, 
size = 397, type = 1

2008-10-26 22:02:41,616 [.cluster#1] DEBUG AMQMessageStore
- Transacted message add commit for: 
ID:master.cluster-34437-1225054915674-0:7:8:1:1, at: offset = 244149, file = 1, 
size = 397, type = 1

2008-10-26 22:02:41,626 [.cluster#1] DEBUG AbstractRegion - Adding destination: 
queue://queue.DLQ
2008-10-26 22:02:41,627 [eue://queue.DLQ] DEBUG AMQMessageStore - Doing batch 
update... adding: 0 removing: 0
2008-10-26 22:02:41,627 [eue://queue.DLQ] DEBUG AMQMessageStore - Batch update 
done.
2008-10-26 22:02:41,628 [.cluster#1] DEBUG AMQMessageStore - flush starting ...
2008-10-26 22:02:41,632 [.cluster#1] DEBUG Service - Error occured while 
processing sync command: java.lang.NullPointerException
java.lang.NullPointerException
        at org.apache.activemq.broker.region.Queue.send(Queue.java:328)
        at 
org.apache.activemq.broker.region.AbstractRegion.send(AbstractRegion.java:350)
        at 
org.apache.activemq.broker.region.RegionBroker.send(RegionBroker.java:437)
        at 
org.apache.activemq.broker.TransactionBroker.send(TransactionBroker.java:224)
        at org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:126)
        at 
org.apache.activemq.broker.CompositeDestinationBroker.send(CompositeDestinationBroker.java:95)
        at 
org.apache.activemq.broker.MutableBrokerFilter.send(MutableBrokerFilter.java:133)
        at 
org.apache.activemq.broker.TransportConnection.processMessage(TransportConnection.java:450)
        at 
org.apache.activemq.command.ActiveMQMessage.visit(ActiveMQMessage.java:639)
        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.DedicatedTaskRunner.runTask(DedicatedTaskRunner.java:98)
        at 
org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner.java:36)

I have a configuration on both master and slave that sets the DLQ name to 
"queue.DLQ" .
The topic DLQ name is not modified. In this case 2 NPE's occurred, while 1 
message was sent to a topic and 3 were sent to different queues.


I'll turn off "processExpired", now, because I want to test other issues.


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to