You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Claus Ibsen (Jira)" <ji...@apache.org> on 2026/02/26 14:44:00 UTC
[jira] [Resolved] (CAMEL-23032) camel-nats consumer sends ACK regardless of the Exchange processing/delivery result
[ https://issues.apache.org/jira/browse/CAMEL-23032?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Claus Ibsen resolved CAMEL-23032.
---------------------------------
Resolution: Fixed
> camel-nats consumer sends ACK regardless of the Exchange processing/delivery result
> -----------------------------------------------------------------------------------
>
> Key: CAMEL-23032
> URL: https://issues.apache.org/jira/browse/CAMEL-23032
> Project: Camel
> Issue Type: Bug
> Components: camel-nats
> Affects Versions: 4.17.0, 4.18.0
> Reporter: Michael Weiss
> Assignee: Claus Ibsen
> Priority: Minor
> Fix For: 4.18.1, 4.19.0
>
>
> h3. Expected behaviour
> NATS consumer only acknowledges message that are successfully routed to the producer, so they can be redelivered in case of an error. This is the behaviour seen on other Message Queue Consumers like RabbitMQ.
> h3. Tested behaviour
> NATS consumer acknowledges any messages, regardless of if the Exchange processing fails or suceeds
> h3. Impact
> Messages are lost and cannot be redelivered
> h3. Example
> Test route with a built in error. Consumer sends ACK even when the Exchange fails:
> {code:yaml}
> - route:
> id: route-3401
> from:
> id: from-2566
> uri: nats
> parameters:
> jetstreamEnabled: true
> jetstreamName: test
> durableName: camel
> exchangePattern: InOut # Tested with InOnly as well
> pullSubscription: false
> servers: nats:4222
> topic: "456"
> steps:
> - log:
> id: log-2580
> message: ${body}
> - setBody:
> disabled: false
> groovy:
> expression: |
> 1/0
> - to:
> uri: log:logger
> {code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)