activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gary Tully <gary.tu...@gmail.com>
Subject Re: "Could not correlate acknowledgment with dispatched message"
Date Thu, 12 Nov 2009 14:26:53 GMT
it looks like a bug. Best approach is to open a jira issue for this and if
possible, convert one of the existing unit test cases into something that
demonstrates your problem and attach it to the jira.
Ie: change the test case to use a message listener instead of a sync
receive.

My assumption is that the warn occurs because the ack of the second message
also acks the first message (individual ack is behaving like client ack), so
a test case that does not ack the first message and expects a replay should
fail.

A broker unit test case will make it easy to track down and will protect any
fix.

2009/11/12 Daroo <dariusz.szablinski@gmail.com>

>
> Thanx for the response but it still doesn’t clarify why I am getting this
> strange exception. I understand the difference between INDIVIDAUAL and
> CLIENT ACK modes, but my sample code fails in both cases.
> Unit tests you pointed me out are unfortunately not relevant in this case,
> because consumers there are SYNCH (use receive() method) and mine are
> ASYNCH
> (onMessage()). I already knew, that in SYNCH consumer’s scenario everything
> is fine. Maybe I didn’t emphasize this strongly enough in my first post.
> So,
> let’s focus on following use case: CLIENT_ACK mode, more than one ASYNCH
> consumer, each consumer shares the same connection but has its own session;
> messages are acknowledged in “out of order” way.
>
>
>
> Gary Tully wrote:
> >
> > This is where I wold expect INDIVIDUAL_ACK to be different from CLIENT
> > ACK.
> > For a given session message.acknowledge with CLIENT_ACK will ack all
> > messages received, but the activemq INDIVIDUAL_ACK mode, just an
> > individual
> > message should be acknowledged.
> >
> > To see if it is actually a problem, I guess a real test case is to use
> > INDIVIDUAL ACK and ack out of order (as you are doing), but do not ack
> the
> > the first message. Then verify that the first message is redelivered.
> >
> > With CLIENT_ACK on the same session, I would expect no redelivery, but
> > with
> > INDIVIDUL_ACK there should be redelivery.
> >
> > Some of the relevant activemq unit tests are:
> > org.apache.activemq.JmsClientAckTest
> > org.apache.activemq.JMSIndividualAckTest
> > from:
> >
> http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/test/java/org/apache/activemq/
> >
> >
>
> --
> View this message in context:
> http://old.nabble.com/%22Could-not-correlate-acknowledgment-with-dispatched-message%22-tp26308220p26318642.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>
>


-- 
http://blog.garytully.com

Open Source Integration
http://fusesource.com

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message