users@glassfish.java.net

Re: JMS Redelivery Interval (GF 2.1)

From: Gustavo Henrique Orair <gustavo.orair_at_gmail.com>
Date: Wed, 14 Dec 2011 12:35:25 -0200

Hi Nigel,
Could you please explain better the delay behavior and how to change it?

"*(Remember you've got a pool of MDBs, so if the MDB starts throwing
exceptions you'll see a sudden burst of, say, 32 exceptions, then a pause of
18 seconds, when another burst of 32 exceptions, and so on.)*"

In my case, I have a MDB that may receive many messages in a minute. These
messages (the TO inside the message) may already have been received
previously. In this case, the MDB invokes a stateless session bean that
will throw a BOAlreadyExists exception. Inside MDB, I get the
BOAlreadyExists exception and just log this event.
I have some problems because the pool seems "stop working" after a
predefined number of these exceptions.

---------------------------------------------------------------------------------------------------------------------
                               Gustavo Henrique Orair
 Mestre em Ciência da Computação - MSc in Computer Science
                                    Universidade Federal de Minas Gerais
               Celular/Cell phone: 55-31-85157887
------------------------------------------------------------------------------------------------------------------



2011/12/14 Nigel Deakin <nigel.deakin_at_oracle.com>:
> On 12/12/2011 23:46, forums_at_java.net wrote:
>>
>> I'm not having any luck getting a JMS redelivery interval to work. Below
>> is the xml from sun-ejb.jar.xml (right place?).
>
>
> Yes, this looks fine.
>
>
>> I'd like to configure this
>> in XML so if I want to change the interval later, I can do it without a
>> recompile.
>>
>> Dialing up the logging, I can see what I think is proof that the value
>> is getting set. It's just not honoring the value. I am hoping to slow
>> down the redelivery to be very slow, so when a third-party system is down
>> we're not pounding them with messages. What am I missing?
>
>
> You're using a relatively old version of GlassFish. Could you try using
the
> latest version? It seems to work for me with 3.1.1.
>
> (Remember you've got a pool of MDBs, so if the MDB starts throwing
> exceptions you'll see a sudden burst of, say, 32 exceptions, then a pause
of
> 18 seconds, when another burst of 32 exceptions, and so on.)
>
> Nigel