On Fri, Nov 11, 2011 at 4:50 AM, awillia <antony.willi...@fronde.com> wrote: > I am using camel 2.8 and can't seem to get asynchronous delaying of messages > working. > > This is my sample code. The checkDelay method delays the first message for > 10 seconds and does not delay the following messages. > > from("activemq:sandbox:sendqueue").routeId("Test Route") > .process(setInternalMessageId) > .delay().method("updateMessage", "getDelay").asyncDelayed() > .log(LoggingLevel.INFO, "Finished processing > ${headers.InternalMessageId}"); > > I get the first message delayed and then all the following messages block > until the first one is release and then the others go through. > > Am I missing something? I thought asycDelayed shouldn't block. >
The JMS consumer is blocked as it will not pickup the next message unless the previous has been fully processed. In Camel 2.9 onwards you can configure the JMS endpoint with asyncConsumer=true, to allow the consumer to run in fully async node. See more details at the JMS wiki page http://camel.apache.org/jms > regards > Antony > > -- > View this message in context: > http://camel.465427.n5.nabble.com/asyncDelayed-does-not-appear-to-work-tp4983202p4983202.html > Sent from the Camel - Users mailing list archive at Nabble.com. > -- Claus Ibsen ----------------- FuseSource Email: cib...@fusesource.com Web: http://fusesource.com Twitter: davsclaus, fusenews Blog: http://davsclaus.blogspot.com/ Author of Camel in Action: http://www.manning.com/ibsen/