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

Claus Ibsen commented on CAMEL-2568:
------------------------------------

If we add variable delay between redeliveries we can use a 
{{java.util.concurrent.DelayQueue}} to hold the exchanges in a queue and let 
them fire when they should. This prevents them from blocking a thread for a 
longer period.

We could most likely add the DelayQueue as a kind of generic DSL as well. For 
example the current Delayer DSL is blocking in current thread. We could add 
option to let it be non blocking as well, and reuse it in this situation.

The trick is to keep AggregateProcessor updated with in flight as it should be 
regarded as in flight when put on the delay queue.

> camel-hawtdb - Add support for additional completed state to support 
> transaction and recovery of failed aggregated exchanges
> ----------------------------------------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-2568
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-2568
>             Project: Apache Camel
>          Issue Type: New Feature
>            Reporter: Claus Ibsen
>            Assignee: Claus Ibsen
>             Fix For: 2.3.0
>
>
> The persisted {{AggregatedRepository}} using camel-hawtdb should support:
> - additional completed state in hawtdb to keep exchanges persisted
> - and have it work as in UoW when aggregated exchanges is processed
> - this enabled transacted behavior
> - add recovery on startup to emit previously failed completed exchanges

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

Reply via email to