Ok,
My configuration is this:

In the MDB ActivationSpec:
maxSessions=1 (I really need to process messages one at a time)
maxMessagesPerSessions=1 (not sure about this one)

In the JMS Queue resource adapter:
I'm using the defaults, so QueuePrefetch is 1000

I'm sending TextMessages from a remote Java (client) app. The behavior is this: 
my MDB is not called at all.

I see this in the AMQ logs:

[PrefetchSubscription] Prefetch limit.

I assume I would need to set maxMessagesPerSessions to something higher? Say 
1000 to match the QueuePrefetch setting in the RA?

The above message could mean that the prefetch limit of 1 has been met and no 
message delivery happens?
I'm using auto acknowledge so I assume I don't have to call acknowledge on the 
message in the MDB.

Could someone provide some guidance?

Thank you

________________________________________
From: Rob Davies [rajdav...@gmail.com]
Sent: 26 March 2010 20:26
To: users@activemq.apache.org
Subject: Re: Messages stuck in the queue

catching Throwable would be best. You wouldn't need to redeploy the JMS queue - 
just restart the client should do
On 26 Mar 2010, at 16:40, Cristian Botiza wrote:

> When you say 'you miss an ack somewhere'...does this mean onMessage() throws 
> an exception?
>
> I've had this problem before, I added a try/catch (Exception e) to make sure 
> no exception gets out of onMessage(), should I use catch(Throwable) instead?
>
> I'm not calling message.acknowledge(), the container should do - I assume.
>
> Anyways, supposing there was a throwable that made it out of onMessage() it 
> basically means no other message will be dispatched and I have to redeploy 
> the JMS queue in the app server?
>
> Thank you
>
> ________________________________________
> From: Gary Tully [gary.tu...@gmail.com]
> Sent: 26 March 2010 18:26
> To: users@activemq.apache.org
> Subject: Re: Messages stuck in the queue
>
> you are using a prefetch of 1 (this sum of maxSessions,
> maxMessagesPerSessions ) and possibly u miss an ack somewhere and no
> dispatch happens. Possibly using maxSessions=1
> and maxMessagesPerSessions =100 may help. so that you get a prefetch of 100.
>
>
> On 26 March 2010 15:18, Cristian Botiza <cristian.bot...@endava.com> wrote:
>
>> Hi all,
>>
>> I'm using an activation spec where maxSessions=maxMessagesPerSessions=1.
>> Using a client application I'm sending a TextMessage to the queue
>>
>> The MDB consumes some messages and then the messages start piling up in the
>> queue and never get dispatched.
>> I restarted the server, redeployed the application but no message is
>> dispatched anymore.
>>
>> I'm using ActiveMQ 4.1.2 as embeded in Apache Geronimo 2.1.1.2 (and can't
>> change it).
>> I'm using maxSessions=1 as the message is really a notification and wanted
>> to avoid processing the same notification concurrently.
>>
>> Do you have any suggestions? This is really a blocker now.
>>
>> Thank you
>> Cristian
>>
>> The information in this email is confidential and may be legally
>> privileged. It is intended solely for the addressee. Any opinions expressed
>> are mine and do not necessarily represent the opinions of the Company.
>> Emails are susceptible to interference. If you are not the intended
>> recipient, any disclosure, copying, distribution or any action taken or
>> omitted to be taken in reliance on it, is strictly prohibited and may be
>> unlawful. If you have received this message in error, do not open any
>> attachments but please notify the EndavaIT Service Desk on (+44 (0)870 423
>> 0187), and delete this message from your system. The sender accepts no
>> responsibility for information, errors or omissions in this email, or for
>> its use or misuse, or for any act committed or omitted in connection with
>> this communication. If in doubt, please verify the authenticity of the
>> contents with the sender. Please rely on your own virus checkers as no
>> responsibility is taken by the sender for any damage rising out of any bug
>> or virus infection.
>>
>> Endava Limited is a company registered in England under company number
>> 5722669 whose registered office is at 125 Old Broad Street, London, EC2N
>> 1AR, United Kingdom. Endava Limited is the Endava group holding company and
>> does not provide any services to clients. Each of Endava Limited and its
>> subsidiaries is a separate legal entity and has no liability for another
>> such entity's acts or omissions. Please refer to the “Legal” section on our
>> website for a list of legal entities.
>>
>
>
>
> --
> http://blog.garytully.com
>
> Open Source Integration
> http://fusesource.com
>
> The information in this email is confidential and may be legally privileged. 
> It is intended solely for the addressee. Any opinions expressed are mine and 
> do not necessarily represent the opinions of the Company. Emails are 
> susceptible to interference. If you are not the intended recipient, any 
> disclosure, copying, distribution or any action taken or omitted to be taken 
> in reliance on it, is strictly prohibited and may be unlawful. If you have 
> received this message in error, do not open any attachments but please notify 
> the EndavaIT Service Desk on (+44 (0)870 423 0187), and delete this message 
> from your system. The sender accepts no responsibility for information, 
> errors or omissions in this email, or for its use or misuse, or for any act 
> committed or omitted in connection with this communication. If in doubt, 
> please verify the authenticity of the contents with the sender. Please rely 
> on your own virus checkers as no responsibility is taken by the sender for 
> any damage rising out of any bug or virus infection.
>
> Endava Limited is a company registered in England under company number 
> 5722669 whose registered office is at 125 Old Broad Street, London, EC2N 1AR, 
> United Kingdom. Endava Limited is the Endava group holding company and does 
> not provide any services to clients. Each of Endava Limited and its 
> subsidiaries is a separate legal entity and has no liability for another such 
> entity's acts or omissions. Please refer to the “Legal” section on our 
> website for a list of legal entities.

Reply via email to