You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@camel.apache.org by "Bryan Keller (JIRA)" <ji...@apache.org> on 2011/02/01 00:19:28 UTC
[jira] Commented: (CAMEL-3239) camel-quartz should require unique
timername
[ https://issues.apache.org/jira/browse/CAMEL-3239?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12988952#comment-12988952 ]
Bryan Keller commented on CAMEL-3239:
-------------------------------------
This change caused a regression in my application. If you are using a StatefulJob and not using a clustered job store, you will get a failure upon startup of the route after the first time.
e.g. Using an endpoint such as:
{code}
<endpoint id="pingSchedule" uri="quartz://myapp/ping?cron=${ping.cron}&stateful=true" />
{code}
Configure the Quartz job store to NOT be clustered (org.quartz.jobStore.isClustered = false). Start the app. Then shut it down. Now start it up a second time. The following exception is thrown:
{code}
org.apache.camel.ResolveEndpointFailedException: Failed to resolve endpoint: quartz://myapp/ping?cron=0+0+23+*+*+%3F&stateful=true due to: A Quartz job already exists with the name/group: myapp/ping
{code}
It seems that this code change is not compatible when using stateful jobs in a non-clustered environment.
> camel-quartz should require unique timername
> --------------------------------------------
>
> Key: CAMEL-3239
> URL: https://issues.apache.org/jira/browse/CAMEL-3239
> Project: Camel
> Issue Type: Improvement
> Components: camel-quartz
> Affects Versions: 2.4.0
> Reporter: Bengt Rodehav
> Assignee: Tracy Snell
> Priority: Minor
> Fix For: 2.6.0
>
> Attachments: patchfile.txt, patchfile.txt
>
>
> 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 thing).
> 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.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira