MessageAvailableListener doesn't work with rollback?

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

MessageAvailableListener doesn't work with rollback?

Kevin Burton
I'm trying to use a message available listener to notify me when I have a
message after a rollback.

https://gist.github.com/burtonator/ebf06a7238bd9a1273853ce5282acf02

I'm doing this so that I can do non-blocking receive.

However, it's only called once, in the initial receive.  Even if I do 5
rollbacks I only get the event on the first message the first time its
delivered.

Any thoughts as to what I'm doing wrong here?

Stumped on this one.. at last I tracked it down though.  Wasted half a day
already.

--

We’re hiring if you know of any awesome Java Devops or Linux Operations
Engineers!

Founder/CEO Spinn3r.com
Location: *San Francisco, CA*
blog: http://burtonator.wordpress.com
… or check out my Google+ profile
<https://plus.google.com/102718274791889610666/posts>
Reply | Threaded
Open this post in threaded view
|

Re: MessageAvailableListener doesn't work with rollback?

Kevin Burton
OK.. I think this is a bug.. looks like rollback just adds it back
to unconsumedMessages if nonBlockingRedelivery = false but forgets to call
the messageActivityListener telling us that there's a message available to
be read.

Seems to be clearly a bug.. but I think I have a work around to turn on
nonBlockingRedelivery...



On Thu, Jun 9, 2016 at 6:22 PM, Kevin Burton <[hidden email]> wrote:

> I'm trying to use a message available listener to notify me when I have a
> message after a rollback.
>
> https://gist.github.com/burtonator/ebf06a7238bd9a1273853ce5282acf02
>
> I'm doing this so that I can do non-blocking receive.
>
> However, it's only called once, in the initial receive.  Even if I do 5
> rollbacks I only get the event on the first message the first time its
> delivered.
>
> Any thoughts as to what I'm doing wrong here?
>
> Stumped on this one.. at last I tracked it down though.  Wasted half a day
> already.
>
> --
>
> We’re hiring if you know of any awesome Java Devops or Linux Operations
> Engineers!
>
> Founder/CEO Spinn3r.com
> Location: *San Francisco, CA*
> blog: http://burtonator.wordpress.com
> … or check out my Google+ profile
> <https://plus.google.com/102718274791889610666/posts>
>
>


--

We’re hiring if you know of any awesome Java Devops or Linux Operations
Engineers!

Founder/CEO Spinn3r.com
Location: *San Francisco, CA*
blog: http://burtonator.wordpress.com
… or check out my Google+ profile
<https://plus.google.com/102718274791889610666/posts>
Reply | Threaded
Open this post in threaded view
|

Re: MessageAvailableListener doesn't work with rollback?

Kevin Burton
Looks like a workaround is to set jms.nonBlockingRedelivery=true

... then the normal dispatch path is used which then calls the message
activity listener.

On Thu, Jun 9, 2016 at 6:36 PM, Kevin Burton <[hidden email]> wrote:

> OK.. I think this is a bug.. looks like rollback just adds it back
> to unconsumedMessages if nonBlockingRedelivery = false but forgets to call
> the messageActivityListener telling us that there's a message available to
> be read.
>
> Seems to be clearly a bug.. but I think I have a work around to turn on
> nonBlockingRedelivery...
>
>
>
> On Thu, Jun 9, 2016 at 6:22 PM, Kevin Burton <[hidden email]> wrote:
>
>> I'm trying to use a message available listener to notify me when I have a
>> message after a rollback.
>>
>> https://gist.github.com/burtonator/ebf06a7238bd9a1273853ce5282acf02
>>
>> I'm doing this so that I can do non-blocking receive.
>>
>> However, it's only called once, in the initial receive.  Even if I do 5
>> rollbacks I only get the event on the first message the first time its
>> delivered.
>>
>> Any thoughts as to what I'm doing wrong here?
>>
>> Stumped on this one.. at last I tracked it down though.  Wasted half a
>> day already.
>>
>> --
>>
>> We’re hiring if you know of any awesome Java Devops or Linux Operations
>> Engineers!
>>
>> Founder/CEO Spinn3r.com
>> Location: *San Francisco, CA*
>> blog: http://burtonator.wordpress.com
>> … or check out my Google+ profile
>> <https://plus.google.com/102718274791889610666/posts>
>>
>>
>
>
> --
>
> We’re hiring if you know of any awesome Java Devops or Linux Operations
> Engineers!
>
> Founder/CEO Spinn3r.com
> Location: *San Francisco, CA*
> blog: http://burtonator.wordpress.com
> … or check out my Google+ profile
> <https://plus.google.com/102718274791889610666/posts>
>
>


--

We’re hiring if you know of any awesome Java Devops or Linux Operations
Engineers!

Founder/CEO Spinn3r.com
Location: *San Francisco, CA*
blog: http://burtonator.wordpress.com
… or check out my Google+ profile
<https://plus.google.com/102718274791889610666/posts>
Reply | Threaded
Open this post in threaded view
|

Re: MessageAvailableListener doesn't work with rollback?

Tim Bain
Hey Kevin, thanks for the find.  Could you submit a bug report in JIRA to
get the blocking delivery path working?

Thanks,
Tim
On Jun 9, 2016 7:44 PM, "Kevin Burton" <[hidden email]> wrote:

> Looks like a workaround is to set jms.nonBlockingRedelivery=true
>
> ... then the normal dispatch path is used which then calls the message
> activity listener.
>
> On Thu, Jun 9, 2016 at 6:36 PM, Kevin Burton <[hidden email]> wrote:
>
> > OK.. I think this is a bug.. looks like rollback just adds it back
> > to unconsumedMessages if nonBlockingRedelivery = false but forgets to
> call
> > the messageActivityListener telling us that there's a message available
> to
> > be read.
> >
> > Seems to be clearly a bug.. but I think I have a work around to turn on
> > nonBlockingRedelivery...
> >
> >
> >
> > On Thu, Jun 9, 2016 at 6:22 PM, Kevin Burton <[hidden email]> wrote:
> >
> >> I'm trying to use a message available listener to notify me when I have
> a
> >> message after a rollback.
> >>
> >> https://gist.github.com/burtonator/ebf06a7238bd9a1273853ce5282acf02
> >>
> >> I'm doing this so that I can do non-blocking receive.
> >>
> >> However, it's only called once, in the initial receive.  Even if I do 5
> >> rollbacks I only get the event on the first message the first time its
> >> delivered.
> >>
> >> Any thoughts as to what I'm doing wrong here?
> >>
> >> Stumped on this one.. at last I tracked it down though.  Wasted half a
> >> day already.
> >>
> >> --
> >>
> >> We’re hiring if you know of any awesome Java Devops or Linux Operations
> >> Engineers!
> >>
> >> Founder/CEO Spinn3r.com
> >> Location: *San Francisco, CA*
> >> blog: http://burtonator.wordpress.com
> >> … or check out my Google+ profile
> >> <https://plus.google.com/102718274791889610666/posts>
> >>
> >>
> >
> >
> > --
> >
> > We’re hiring if you know of any awesome Java Devops or Linux Operations
> > Engineers!
> >
> > Founder/CEO Spinn3r.com
> > Location: *San Francisco, CA*
> > blog: http://burtonator.wordpress.com
> > … or check out my Google+ profile
> > <https://plus.google.com/102718274791889610666/posts>
> >
> >
>
>
> --
>
> We’re hiring if you know of any awesome Java Devops or Linux Operations
> Engineers!
>
> Founder/CEO Spinn3r.com
> Location: *San Francisco, CA*
> blog: http://burtonator.wordpress.com
> … or check out my Google+ profile
> <https://plus.google.com/102718274791889610666/posts>
>