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

Claus Ibsen reassigned CAMEL-25090:
-----------------------------------

    Assignee: Claus Ibsen

> camel-core - Event notifiers and vault configuration: fix bugs found in a 
> deep review
> -------------------------------------------------------------------------------------
>
>                 Key: CAMEL-25090
>                 URL: https://issues.apache.org/jira/browse/CAMEL-25090
>             Project: Camel
>          Issue Type: Bug
>          Components: camel-core
>            Reporter: Claus Ibsen
>            Assignee: Claus Ibsen
>            Priority: Minor
>
> A review of the event notifiers and the vault configuration found these bugs:
> # An exception thrown from EventNotifier.isEnabled is not caught (only 
> exceptions from notify are), so it breaks routing: a route fails to start 
> (RouteStarted/RouteAdded), the CamelContext fails to start or stop, sending 
> fails (ExchangeSending/ExchangeSent), and with StepStarted the exchange never 
> completes.
> # The ExchangeSentEvent is only emitted when some event notifier accepted the 
> ExchangeSendingEvent. A notifier with ignoreExchangeSendingEvents=true (such 
> as the sql-trace dev console), or whose isEnabled only accepts 
> ExchangeSentEvent, never receives any sent events.
> # The ExchangeRedeliveryEvent is filtered by ignoreExchangeFailedEvents 
> instead of ignoreExchangeRedeliveryEvents, so ignoreExchangeRedeliveryEvents 
> has no effect, and a notifier that ignores failed events (such as the 
> camel-event ExchangeRedelivery consumer) gets no redelivery events.
> # When more than one vault is configured with camel.vault.* properties (such 
> as camel.vault.aws.* and camel.vault.hashicorp.*), only the first is 
> configured, the others are set on a nested configuration and are lost 
> (without any warning).
> # With camel-main, VaultConfiguration.getAwsVaultConfiguration() (and the 
> other getters) return null even when the vault is configured with 
> camel.vault.aws.*, as VaultConfigurationProperties keeps its own vault 
> configurations and only overrides the fluent aws()/gcp()/... methods.
> # An event notifier added to the ManagementStrategy after CamelContext has 
> been started receives events but is never started (and it is not stopped when 
> removed).
> Not changed:
> * A vault configuration bean from the registry (such as 
> AwsVaultConfiguration) is not used by the fluent aws() method of the 
> camel-main vault configuration when camel.vault.aws.* is also used.
> * The camel-event component still enables ExchangeSending events for an 
> ExchangeSent consumer (no longer needed, but harmless).
> _Claude Code on behalf of Claus Ibsen_



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

Reply via email to