My camel routes can have multiple aggregations. We are using Jdbc AggregationRepository for the same.
The problem I am are facing is when the first aggregator marks an aggregation complete, the second one which is totally unrelated picks up the completed exchanges and processes them. Giving a second look at the document, it states the tables Aggregation and Aggregation_Completed has to be created per aggregator. Does this mean if we have 50 routes with aggregator, we create 100 tables? Is there a workaround to use the same tables for any number of aggregators? On debugging, I noticed that Aggregator uses the correlation id on the Aggregation table's id value, but Aggregation_completed table's id is not correlation id, but the exchange id (which is documented!). So this causes aggregators to pickup unrelated completed exchanges. If the Aggregation_Completed table's message id is set to correlation id instead of exchange id, will it help? The design is kept this way for some reason, I just want to understand the impact of changing this. Sample use case: multiple messages arrive with product_id, 1st aggregator ensures only the latest message per product_id is sent forward within 30 mins completionInterval. The product_id belongs to certain sales_department which are gathered by enrichments. The 2nd aggregator downstream ensures only exchange per sales_department_id is send out within 30 mins completionInterval Thanks! -- View this message in context: http://camel.465427.n5.nabble.com/Camel-JDBC-Aggregator-the-need-for-2-tables-Aggregation-tp5755847.html Sent from the Camel - Users mailing list archive at Nabble.com.