You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by vkumar <va...@gmail.com> on 2008/04/03 18:23:54 UTC

ActiveMQ 4.1.1: retroactive consumer not getting all messages

We are using ActiveMQ 4.1.1 and a retroactive consumer does not receive all
messages.
OS: Windows 2003 Server
Java: 1.5.0_11 
In this particular case, we had 403 messages on the queue, we call
receiveNoWait() in a loop and after N messages where N < 403,
receiveNoWiat() returns nothing. The value of N varies depending on the
prefetch count set. If prefetch is set to 1, then N varies between 2-10. If
prefetch is 32, then N varies betweeen 30-70. If we don't set prefetch at
all (I guess default is 1000), then we get all messages.

Each message is about 1Mbyte. We would like to set a prefetch to a lower
number to avoid outofmemory exceptions in the consumer application.

While calling receiveNoWiat(), is there something else we need to check?

Any recommendations?

Thanks,
vasant
 
-- 
View this message in context: http://www.nabble.com/ActiveMQ-4.1.1%3A-retroactive-consumer-not-getting-all-messages-tp16467798s2354p16467798.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Re: ActiveMQ 4.1.1: retroactive consumer not getting all messages

Posted by vkumar <va...@gmail.com>.
Thanks for the reply.

The url you refered to is applicable to "topics", but for "queues",
retrospective consumers should be able to get all the messages on the queue.
right?

Thanks,
vasant

-- 
View this message in context: http://www.nabble.com/ActiveMQ-4.1.1%3A-retroactive-consumer-not-getting-all-messages-tp16467798s2354p16474171.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Re: ActiveMQ 4.1.1: retroactive consumer not getting all messages

Posted by ttmdev <jo...@ttmsolutions.com>.
I don't think that the retroactive consumer feature guarantees delivery of
all messages sent while the consumer was inactive. The way this feature is
described, it is more of a best-attempt effort to deliver the messages. 

http://activemq.apache.org/retroactive-consumer.html

Have you considered using virtual topics?

Joe
Goto www.ttmsolutions.com for a free ActiveMQ user guide


vkumar wrote:
> 
> We are using ActiveMQ 4.1.1 and a retroactive consumer does not receive
> all messages.
> OS: Windows 2003 Server
> Java: 1.5.0_11 
> In this particular case, we had 403 messages on the queue, we call
> receiveNoWait() in a loop and after N messages where N < 403,
> receiveNoWiat() returns nothing. The value of N varies depending on the
> prefetch count set. If prefetch is set to 1, then N varies between 2-10.
> If prefetch is 32, then N varies betweeen 30-70. If we don't set prefetch
> at all (I guess default is 1000), then we get all messages.
> 
> Each message is about 1Mbyte. We would like to set a prefetch to a lower
> number to avoid outofmemory exceptions in the consumer application.
> 
> While calling receiveNoWiat(), is there something else we need to check?
> 
> Any recommendations?
> 
> Thanks,
> vasant
>  
> 

-- 
View this message in context: http://www.nabble.com/ActiveMQ-4.1.1%3A-retroactive-consumer-not-getting-all-messages-tp16467798s2354p16467959.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.