Intermittent test failure - TopicMasterSlaveTest
------------------------------------------------

                 Key: AMQ-2072
                 URL: https://issues.apache.org/activemq/browse/AMQ-2072
             Project: ActiveMQ
          Issue Type: Bug
    Affects Versions: 5.3.0
            Reporter: David Jencks


I'm seeing failures of org.apache.activemq.broker.ft.TopicMasterSlaveTest

caused by this:

2009-01-17 17:15:07,132 [main           ] INFO  BrokerService                  
- ActiveMQ JMS Message Broker (slave, ID:pb.local-53706-1232241285482-0:1) 
stopped

javax.jms.JMSException: java.lang.RuntimeException: 
java.lang.IllegalStateException: Message id 
ID:pb.local-53667-1232241049265-3:0:1:1:78 could not be recovered from the data 
store - already dispatched
        at 
org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:49)
        at 
org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1250)
        at org.apache.activemq.ActiveMQSession.send(ActiveMQSession.java:1687)
        at 
org.apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:231)
        at 
org.apache.activemq.ActiveMQMessageProducerSupport.send(ActiveMQMessageProducerSupport.java:300)
        at 
org.apache.activemq.JmsSendReceiveTestSupport.sendToProducer(JmsSendReceiveTestSupport.java:116)
        at 
org.apache.activemq.JmsSendReceiveTestSupport.testSendReceive(JmsSendReceiveTestSupport.java:99)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at 
com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:40)
Caused by: java.lang.RuntimeException: java.lang.RuntimeException: 
java.lang.IllegalStateException: Message id 
ID:pb.local-53667-1232241049265-3:0:1:1:78 could not be recovered from the data 
store - already dispatched
        at 
org.apache.activemq.broker.region.cursors.AbstractStoreCursor.reset(AbstractStoreCursor.java:104)
        at 
org.apache.activemq.broker.region.cursors.StoreDurableSubscriberCursor.reset(StoreDurableSubscriberCursor.java:225)
        at 
org.apache.activemq.broker.region.PrefetchSubscription.dispatchPending(PrefetchSubscription.java:563)
        at 
org.apache.activemq.broker.region.PrefetchSubscription.add(PrefetchSubscription.java:154)
        at 
org.apache.activemq.broker.region.DurableTopicSubscription.add(DurableTopicSubscription.java:197)
        at 
org.apache.activemq.broker.region.policy.SimpleDispatchPolicy.dispatch(SimpleDispatchPolicy.java:49)
        at org.apache.activemq.broker.region.Topic.dispatch(Topic.java:577)
        at org.apache.activemq.broker.region.Topic.doMessageSend(Topic.java:427)
        at org.apache.activemq.broker.region.Topic.send(Topic.java:365)
        at 
org.apache.activemq.broker.region.AbstractRegion.send(AbstractRegion.java:352)
        at 
org.apache.activemq.broker.region.RegionBroker.send(RegionBroker.java:438)
        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:452)
        at 
org.apache.activemq.command.ActiveMQMessage.visit(ActiveMQMessage.java:642)
        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.TransportFilter.onCommand(TransportFilter.java:68)
        at 
org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:143)
        at 
org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:206)
        at 
org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:84)
        at 
org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:203)
        at 
org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:185)
        at java.lang.Thread.run(Thread.java:613)
Caused by: java.lang.RuntimeException: java.lang.IllegalStateException: Message 
id ID:pb.local-53667-1232241049265-3:0:1:1:78 could not be recovered from the 
data store - already dispatched
        at 
org.apache.activemq.broker.region.cursors.AbstractStoreCursor.fillBatch(AbstractStoreCursor.java:239)
        at 
org.apache.activemq.broker.region.cursors.AbstractStoreCursor.reset(AbstractStoreCursor.java:101)
        ... 25 more
Caused by: java.lang.IllegalStateException: Message id 
ID:pb.local-53667-1232241049265-3:0:1:1:78 could not be recovered from the data 
store - already dispatched
        at 
org.apache.activemq.store.amq.RecoveryListenerAdapter.recoverMessageReference(RecoveryListenerAdapter.java:58)
        at 
org.apache.activemq.store.kahadaptor.KahaReferenceStore.recoverReference(KahaReferenceStore.java:82)
        at 
org.apache.activemq.store.kahadaptor.KahaTopicReferenceStore.recoverNextMessages(KahaTopicReferenceStore.java:262)
        at 
org.apache.activemq.store.amq.AMQTopicMessageStore.recoverNextMessages(AMQTopicMessageStore.java:59)
        at 
org.apache.activemq.broker.region.cursors.TopicStorePrefetch.doFillBatch(TopicStorePrefetch.java:91)
        at 
org.apache.activemq.broker.region.cursors.AbstractStoreCursor.fillBatch(AbstractStoreCursor.java:236)
        ... 26 more

This is against trunk, up to date as of today jan 17 2009.  I've seen similar 
failures in tck tests when a queue with a message on it is destroyed, but I 
haven't been able to track down the cause.  For the tck problem running the 
test in the debugger with a few breakpoints caused it to pass consistently.

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