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

Christopher L. Shannon commented on AMQ-5851:
---------------------------------------------

Thanks Gary, that's a good point.  I pushed up my modified PR.  The tests have 
been running for 6+ hours and I think it is good to go.  Tere were a couple 
that failed but those tests always fail on my machine so it doesn't have 
anything to do with the patch.  For example, TopicClusterTest always fails for 
me but seems to work fine in the Apache Jenkins setup.

I agree it would be nice to run some sanity tests that hit core parts of the 
code base on the PR build, just as long as the build isn't too long, maybe 
something that can run in 15 or 20 minutes.

> Unmatched acknowledge: MessageAck {commandId = 77, responseRequired = false, 
> ackType = 2, ...Could not find Message-ID XXX in dispatched-list (start of 
> ack)
> ------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: AMQ-5851
>                 URL: https://issues.apache.org/jira/browse/AMQ-5851
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: JMS client
>    Affects Versions: 5.10.0, 5.11.0, 5.11.1
>            Reporter: Grijesh Saini
>              Labels: ttl
>         Attachments: AcknowledgeIssue.zip
>
>
> When lot of messages got expired because of JMS client Time to Live (TTL) 
> property then below error will appear and consumer will freeze
> {code:xml}
>  Connection to broker failed: Unmatched acknowledge: MessageAck {commandId = 
> 77, responseRequired = false, ackType = 2, consumerId =XXX firstMessageId = 
> ID:XXX
>  lastMessageId = ID:XXX
> , destination = queue://abc, transactionId = null, messageCount = 1, 
> poisonCause = null}; Could not find Message-ID in dispatched-list (start of 
> ack)
>          at 
> org.apache.activemq.broker.region.PrefetchSubscription.assertAckMatchesDispatched(PrefetchSubscription.java:477)
>  [activemq-broker-5.11.1.jar:5.11.1
>  at 
> org.apache.activemq.broker.region.PrefetchSubscription.acknowledge(PrefetchSubscription.java:212)
>  [activemq-broker-5.11.1.jar:5.11.1]
>  at 
> org.apache.activemq.broker.region.AbstractRegion.acknowledge(AbstractRegion.java:441)
>  [activemq-broker-5.11.1.jar:5.11.1]
>  at 
> org.apache.activemq.broker.region.RegionBroker.acknowledge(RegionBroker.java:484)
>  [activemq-broker-5.11.1.jar:5.11.1]
>  at org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:87) 
> [activemq-broker-5.11.1.jar:5.11.1]
>  at org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:87) 
> [activemq-broker-5.11.1.jar:5.11.1]
>  at 
> org.apache.activemq.broker.TransactionBroker.acknowledge(TransactionBroker.java:277)
>  [activemq-broker-5.11.1.jar:5.11.1]
>  at 
> org.apache.activemq.broker.MutableBrokerFilter.acknowledge(MutableBrokerFilter.java:97)
>  [activemq-broker-5.11.1.jar:5.11.1]
>  at 
> org.apache.activemq.broker.TransportConnection.processMessageAck(TransportConnection.java:550)
>  [activemq-broker-5.11.1.jar:5.11.1]
>  at org.apache.activemq.command.MessageAck.visit(MessageAck.java:245) 
> [activemq-client-5.11.1.jar:5.11.1]
>  at 
> org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:334)
>  [activemq-broker-5.11.1.jar:5.11.1]
>  at 
> org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:188)
>  [activemq-broker-5.11.1.jar:5.11.1]
>  at 
> org.apache.activemq.transport.MutexTransport.onCommand(MutexTransport.java:50)
>  [activemq-client-5.11.1.jar:5.11.1]
>  at 
> org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:113)
>  [activemq-client-5.11.1.jar:5.11.1]
>  at 
> org.apache.activemq.transport.AbstractInactivityMonitor.onCommand(AbstractInactivityMonitor.java:270)
>  [activemq-client-5.11.1.jar:5.11.1]
>  at 
> org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:83)
>  [activemq-client-5.11.1.jar:5.11.1]
>  at 
> org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:214) 
> [activemq-client-5.11.1.jar:5.11.1]
>  at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:196) 
> [activemq-client-5.11.1.jar:5.11.1]
>  at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_25]
> {code}
> Steps to reproduce :
> 1. Enable TTL property for JMS client
> 2. Keep TTL value very low say 5 sec
> 3. Send lot of messages so some message will get expired
> 4. Make sure that some message should expired when they are in MDB means 
> running inside MDB
> Then we will see above error in the logs



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to