camel-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Claus Ibsen (Commented) (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CAMEL-4770) Add startAsync option to JMS consumer endpoint to allow route to be started, but the connection to the remote broker occurs async
Date Mon, 05 Mar 2012 09:47:57 GMT

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

Claus Ibsen commented on CAMEL-4770:
------------------------------------

Thanks for your work on this.

Can you use a non scheduled thread pool, as a scheduled thread pool cannot shrink, so it just
keep 1 thread alive all the time, which is really not needed. We essentially need a thread
pool that has 0-1 in size, so the thread can terminate when no longer needed. Also as a good
citizen you ought to shutdown the pool when the consumer is shutting down in its doShutdown
method. Albeit Camel has a fallback mehanishm, so it will shutdown thread pools when it shutdown
itself. But still being a good citizen is a good idea.

Also if you use maven from the command line, you may want to check about building with checkstyle,
so the source code is formatted correct.
http://camel.apache.org/building.html
                
> Add startAsync option to JMS consumer endpoint to allow route to be started, but the
connection to the remote broker occurs async
> ---------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-4770
>                 URL: https://issues.apache.org/jira/browse/CAMEL-4770
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-jms
>            Reporter: Claus Ibsen
>             Fix For: 2.10.0, 2.9.2
>
>         Attachments: AsyncStartListener.patch
>
>
> This allows people to add routes which consumes from JMS destinations, by which the consumer
should start async in a separate thread, this ensures Camel will continue starting the route,
and continue the code. Then the asyns thread starts the JmsConsumer in the background. This
is needed in case the remote connection to the JMS broker does not work. But you want to signal
the route is started anyway, as the JMS consumer most likely support failover and retry, so
the connection may come online later.
> We may need to add some way to store a flag, so you from JMX can monitor if the JMS consumer
is live or not.
> See nabble
> http://camel.465427.n5.nabble.com/Adding-JMS-route-may-block-if-remote-is-down-using-failover-connection-tp5037014p5037014.html

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message