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

Claus Ibsen updated CAMEL-23023:
--------------------------------
    Priority: Minor  (was: Major)

> CamelContext Startup behavior interfers with Spring Lifecycle
> -------------------------------------------------------------
>
>                 Key: CAMEL-23023
>                 URL: https://issues.apache.org/jira/browse/CAMEL-23023
>             Project: Camel
>          Issue Type: Bug
>          Components: camel-spring
>    Affects Versions: 4.8.7
>            Reporter: Christoph Ewerlin
>            Priority: Minor
>
> SpringCamelContext registers to ApplicationEvent "ContextRefreshed" and then 
> starts the CamelContext, see SpringCamelContext::onApplicationEvent.
> There is also a comment saying that 
> {code:java}
> // nominally we would prefer to use Lifecycle interface that
> // would invoke start() method, but in order to do that
> // SpringCamelContext needs to implement SmartLifecycle
> // (look at DefaultLifecycleProcessor::startBeans), but it
> // cannot implement it as it already implements
> // RuntimeConfiguration, and both SmartLifecycle and
> // RuntimeConfiguration declare isAutoStartup method but
> // with boolean and Boolean return types, and covariant
> // methods with primitive types are not allowed by the JLS
> // so we need to listen for ContextRefreshedEvent and start
> // on its reception {code}
> The problem with that is, that for instance KafkaConsumers are started as 
> part of the lifecycle before the CamelContext is starting, which in our case 
> results in messages being consumed and delegated to a camel route, before the 
> context is started -> exception, message loss.
> The ideal behavior would be that the camel context is started BEFORE the 
> kafka listeners start to fire.
> In case it is difficult to fix, maybe it will be an option to update it 
> together with the spring boot 4 integration ticket?



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to