activemq-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Christopher L. Shannon (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (AMQ-6007) Regression from 5.8.0: old scheduledJobId set by client causes ignoring AMQ_SCHEDULED_DELAY
Date Wed, 14 Oct 2015 18:12:05 GMT

    [ https://issues.apache.org/jira/browse/AMQ-6007?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14957424#comment-14957424
] 

Christopher L. Shannon commented on AMQ-6007:
---------------------------------------------

I wrote a little test and I was able to verify this behavior.  It looks like this is a result
of a rewrite done with the SchedulerBroker.  If a scheduledJobId is already set on message
send, the broker won't schedule the message and will send it immediately.  This was done to
prevent duplicates from being scheduled when running a network of brokers and to prevent overwriting
a scheduled job.  This jobId needs to be preserved on the message for things like the management
destination.

In your specific scenario, I think the best thing to do is probably to configure camel to
exclude that property when re-sending.  Will this work for you?

I will add some documentation to the scheduler page to highlight this so that users know to
make sure that property is not set when sending a scheduled message either manually or some
other process such as Camel doing it.

> Regression from 5.8.0: old scheduledJobId set by client causes ignoring AMQ_SCHEDULED_DELAY
> -------------------------------------------------------------------------------------------
>
>                 Key: AMQ-6007
>                 URL: https://issues.apache.org/jira/browse/AMQ-6007
>             Project: ActiveMQ
>          Issue Type: Improvement
>            Reporter: Andrei Shakirin
>
> Hi ActiveMQ community,
> I am observing a following regression from AMQ 5.8.0:
> Use case: 
> 1) client receives message already scheduled for broker with AMQ_SCHEDULED_DELAY
> 2) client creates new message and copies scheduledJobId property from received one
> 3) clients sets new AMQ_SCHEDULED_DELAY and sends the new  message
> Expected behavior: new message will be scheduled for broker honoring AMQ_SCHEDULED_DELAY
> Current behavior: new message will not be scheduled and is delivered immediately. AMQ_SCHEDULED_DELAY
property stays in message.
> In ActiveMQ 5.8.0 this scenario works without problems. I am not sure is it intended
behavior or bug. 
> Can easily happens in Camel routes reading and re-sending the messages. Camel takes over
all JMS properties into Exchange and old scheduledJobId can be sent as a property of new message
(if wouldn't be reset explicitly) that prevents scheduling of new message. Nasty bug that
is quite difficult to debug.
> Regards,
> Andrei.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message