camel-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Bengt Rodehav (JIRA)" <>
Subject [jira] Commented: (CAMEL-3239) camel-quartz should require unique timername
Date Tue, 04 Jan 2011 07:13:47 GMT


Bengt Rodehav commented on CAMEL-3239:


I haven't used Quartz in clustered mode although I do realize that it does complicate things
considerably. I guess clustered mode is why the code needs to "reschedule" and "resume" jobs
- right? Otherwise my immediate reaction would be to always throw an exception if the trigger
already exists. Is there any way to recognize if a job is clustered so that "reschedule" and
"resume" would only be allowed in those cases? Maybe we need to "mark" clustered triggers
in the endpoint URI somehow?

In my scenario, I create my Quartz routes in different camel contexts. They are totally unaware
of each other which is why it's hard to ensure that the trigger names are unique. If the camel
context could act as some sort of namespace for the trigger, then the trigger name would only
have to be unique within the same camel context which is probably a bit easier to ensure.
Not sure how that would work with clustering though...

> camel-quartz should require unique timername
> --------------------------------------------
>                 Key: CAMEL-3239
>                 URL:
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-quartz
>    Affects Versions: 2.4.0
>            Reporter: Bengt Rodehav
>            Priority: Minor
>             Fix For: 2.6.0
> I'm using camel-quartz (Camel 2.4) and have some problems with the timer name (part of
the URI).
> It seems that if I have two different routes (using camel-quartz) with the same timername,
only one of the quartz endpoints will be activated, e g:
> from("quartz://mytimername"?cron=0+*+*+*+*+?+*").to(endpoint1)
> from("quartz://mytimername"?cron=30+*+*+*+*+?+*").to(endpoint2)
> If I make sure that the timernames are unique, both quartz endpoints will work. Thus
I conclude that the timername must be unique (maybe this is a quartz thing and not a camel-quartz
> However, I get no indication that something is wrong since the camel route is started
and looks fine although the quartz endpoint will never trigger. This is not a good situation.
In my case I use this for monitoring purposes. I thought that the monitoring worked fine but
it was actually never triggered at all.
> I'm not sure if this due to camel-quartz or quartz itself. However, if it is possible
for camel-quartz to determine that the endpoint was created OK (not OK if duplicate timer
names), then this should case the camel context to fail.
> I run this in an OSGi environment (Karaf 1.6.0). Thus routes like the above can be created
independent of each other which makes it hard to guarantee that the timername is unique.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message