Paolo Antinori created CAMEL-10411:
--------------------------------------
Summary: Camel-Blueprint - failed container gets restarted
automatically
Key: CAMEL-10411
URL: https://issues.apache.org/jira/browse/CAMEL-10411
Project: Camel
Issue Type: Bug
Components: camel-blueprint
Affects Versions: 2.18.0
Reporter: Paolo Antinori
Assignee: Grzegorz Grzybek
In case of a wrong endpoint definition, a `CamelContext` could be automatically
restarted even if the start operation was correctly aborted.
This happens because during `BlueprintCamelContext`, the `CamelContext`
instance is registered as a `ServiceListener`
https://github.com/apache/camel/blob/master/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintCamelContext.java#L102
Due to that reason, even after a `stop()` call is invoked by the error
execution branch of `start()`, that instance is receptive to external service
events that result in the invocation of this method:
https://github.com/apache/camel/blob/master/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintCamelContext.java#L155
That method has the freedom to start again the `CamelContext` instance.
The proposed solution is to use a `BlueprintCamelContext` local flag to keep
track of the successful initialization of the Context, to be able to ignore
events in case activation wasn't successful.
Note that the `BlueprintCamelContext` instance, un-registers itself as a
service listener, only in its `destroy()` method.
Attached to JBoss-Fuse linked case, there is a reproducer that shows the issue.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)