[
https://issues.apache.org/jira/browse/CAMEL-25588?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Work on CAMEL-25588 started by Andrea Cosentino.
------------------------------------------------
> camel-sql, camel-mybatis, camel-jooq - an exchange marked rollback only last
> is not consumed either
> ---------------------------------------------------------------------------------------------------
>
> Key: CAMEL-25588
> URL: https://issues.apache.org/jira/browse/CAMEL-25588
> Project: Camel
> Issue Type: Bug
> Components: camel-jooq, camel-mybatis, camel-sql
> Reporter: Claus Ibsen
> Assignee: Andrea Cosentino
> Priority: Minor
> Fix For: 4.24.0
>
>
> CAMEL-25550 makes the JPA and Hazelcast SEDA consumers leave a message
> unconsumed when the route marks the exchange rollback only, with
> {{markRollbackOnly()}} or {{markRollbackOnlyLast()}}. The earlier fixes for
> the SQL, MyBatis and jOOQ consumers check only {{isRollbackOnly()}}
> ({{SqlConsumer}}, {{MyBatisConsumer}}, {{JooqConsumer}}), so an exchange
> marked with {{markRollbackOnlyLast()}} is still treated as a success there
> and the row is consumed.
> {{markRollbackOnlyLast()}} reaches the consumer only when no {{transacted()}}
> EIP has consumed the flag ({{TransactionErrorHandler}} clears it), and then
> the consumer's own transaction is the last one, so it should be rolled back
> as well.
> Found in the review of https://github.com/apache/camel/pull/27681
--
This message was sent by Atlassian Jira
(v8.20.10#820010)