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 2016/01/09 15:46:39 UTC

[jira] [Assigned] (CAMEL-9106) URI option mapMailMessage doesn't obey peek=true option

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

Claus Ibsen reassigned CAMEL-9106:
----------------------------------

    Assignee: Claus Ibsen

> URI option mapMailMessage doesn't obey peek=true option
> -------------------------------------------------------
>
>                 Key: CAMEL-9106
>                 URL: https://issues.apache.org/jira/browse/CAMEL-9106
>             Project: Camel
>          Issue Type: Bug
>          Components: camel-mail
>    Affects Versions: 2.15.3
>            Reporter: Jussi Nupponen
>            Assignee: Claus Ibsen
>             Fix For: 2.15.6, 2.16.2, 2.17.0
>
>         Attachments: MapMailMessagesBugRoute.java, camel-mail.mapMailMessages-peek.patch, trace-bug.log, trace-fixed.log
>
>
> URI option mapMailMessage=true as is the default with Mail Component fetches IMAP-messages without peek=true option. This results to faulty rollback logic since in case of an exception and rollback, messages are already marked with flag SEEN and won't be rolled back to UNSEEN.
> Messages are marked with peek-option in processBatch-method but mapping mail messages to Camel messages happens before that method call in createExchanges-method.
> I've attached a patch where peek option is set to the messages already in the poll-method which resolves the issue. Unfortunately I couldn't write a proper jUnit test for this scenario since org.jvnet.mock_javamail.Mailbox doesn't seem to support marking messages as SEEN even if they have been fetched.  However, I have attached traces of faulty and fixed run with a test route (that route is also included).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)