activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hans Bausewein (JIRA)" <j...@apache.org>
Subject [jira] Commented: (AMQ-1987) NullPointerException in pure/master slave setup when expired messages sent to DLQ
Date Sun, 26 Oct 2008 22:50:52 GMT

    [ https://issues.apache.org/activemq/browse/AMQ-1987?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=46842#action_46842
] 

Hans Bausewein commented on AMQ-1987:
-------------------------------------

With "processExpired" set to "false" I do not get NullPointerExceptions, but the slave has
higher message counts than the master.

Could this cause a problem when failover happens after some expired messages arrived?

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


Mime
View raw message