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 2022/01/06 13:27:00 UTC
[jira] [Commented] (CAMEL-17443) .markRollbackOnly() doesn't abort exchange
[ https://issues.apache.org/jira/browse/CAMEL-17443?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17469912#comment-17469912 ]
Claus Ibsen commented on CAMEL-17443:
-------------------------------------
Transactions are for transacted resources such as JMS and JDBC.
Not really for file / ftp etc.
You should look at using a file filter directly on the file where you can skip files that dont match the min age predicate, then the file consumer will only process valid files.
> .markRollbackOnly() doesn't abort exchange
> ------------------------------------------
>
> Key: CAMEL-17443
> URL: https://issues.apache.org/jira/browse/CAMEL-17443
> Project: Camel
> Issue Type: Wish
> Affects Versions: 3.14.0
> Reporter: Yasser Zamani
> Priority: Major
>
> {code:java}
> from("file:./target/source?move=../archive")
> .transacted()
> .choice().when(minAgePredicate).markRollbackOnly()
> .otherwise()
> ....
> {code}
> moves the consumed file to the archive folder even when it's marked to rollback!
> When I replace {{.markRollbackOnly()}} with {{.rollback()}}, it works as expected i.e. it doesn't move the file to the archive folder and polls it again and again until {{minAgePredicate}} satisfied. But the problem is that it logs a lot of warnings i.e. in each poll it warns about the rollback.
> As per docs, I wished I could ask Camel to just rollback and abort/stop exchange *silently* with *.markRollbackOnly()*.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)