camel-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Brian Feaver (JIRA)" <j...@apache.org>
Subject [jira] Updated: (CAMEL-3535) Aggregation fails to call onComplete for exchanges if the aggregation is after a bean or process.
Date Wed, 12 Jan 2011 21:06:47 GMT

     [ https://issues.apache.org/jira/browse/CAMEL-3535?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Brian Feaver updated CAMEL-3535:
--------------------------------

    Description: 
When creating a route that contains an aggregation, if that aggregation is preceded by a bean
or process, it will fail to call AggregateOnCompletion.onComplete(). I've attached a unit
test that can show you the behavior. Trace level loggging will need to be enabled to see the
difference. With the call to the bean, it won't show the following log entry:
{noformat}TRACE org.apache.camel.processor.aggregate.AggregateProcessor - Aggregated exchange
onComplete: Exchange[Message: ab]{noformat}
If you remove the bean call, it'll start calling onComplete() again.

What I've noticed is that if this call is not made, it ends up in a memory leak since the
inProgressCompleteExchanges HashSet in AggregateProcessor never has any exchange ID's removed.

  was:
When creating a route that contains an aggregation, if that aggregation is preceded by a bean
or process, it will fail to call AggregateOnCompletion.onComplete(). I've attached a unit
test that can show you the behavior. Trace level loggging will need to be enabled to see the
difference. With the call to the bean, it won't show the following log entry:
{noformat}TRACE org.apache.camel.processor.aggregate.AggregateProcessor - Aggregated exchange
onComplete: Exchange[Message: ab]{noformat}
If you remove the bean call, it'll start calling onComplete() again.



> Aggregation fails to call onComplete for exchanges if the aggregation is after a bean
or process.
> -------------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-3535
>                 URL: https://issues.apache.org/jira/browse/CAMEL-3535
>             Project: Camel
>          Issue Type: Bug
>          Components: camel-core
>    Affects Versions: 2.5.0
>            Reporter: Brian Feaver
>         Attachments: AggregationTest.java
>
>
> When creating a route that contains an aggregation, if that aggregation is preceded by
a bean or process, it will fail to call AggregateOnCompletion.onComplete(). I've attached
a unit test that can show you the behavior. Trace level loggging will need to be enabled to
see the difference. With the call to the bean, it won't show the following log entry:
> {noformat}TRACE org.apache.camel.processor.aggregate.AggregateProcessor - Aggregated
exchange onComplete: Exchange[Message: ab]{noformat}
> If you remove the bean call, it'll start calling onComplete() again.
> What I've noticed is that if this call is not made, it ends up in a memory leak since
the inProgressCompleteExchanges HashSet in AggregateProcessor never has any exchange ID's
removed.

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


Mime
View raw message