[ 
https://issues.apache.org/jira/browse/NIFI-2774?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15536978#comment-15536978
 ] 

ASF GitHub Bot commented on NIFI-2774:
--------------------------------------

Github user mosermw commented on a diff in the pull request:

    https://github.com/apache/nifi/pull/1036#discussion_r81410549
  
    --- Diff: 
nifi-nar-bundles/nifi-jms-bundle/nifi-jms-processors/src/main/java/org/apache/nifi/jms/processors/ConsumeJMS.java
 ---
    @@ -54,8 +61,31 @@
     @SeeAlso(value = { PublishJMS.class, JMSConnectionFactoryProvider.class })
     public class ConsumeJMS extends AbstractJMSProcessor<JMSConsumer> {
     
    +    static final AllowableValue AUTO_ACK = new 
AllowableValue(String.valueOf(Session.AUTO_ACKNOWLEDGE),
    +            "AUTO_ACKNOWLEDGE",
    +            "Automatically acknowledges a client's receipt of a message, 
regardless if NiFi session has been commited. "
    +                    + "Can result in data loss in the event where NiFi 
abruptly stopped before session was commited.");
    +
    +    static final AllowableValue CLIENT_ACK = new 
AllowableValue(String.valueOf(Session.CLIENT_ACKNOWLEDGE),
    +            "CLIENT_ACKNOWLEDGE",
    +            "(DEFAULT) Manually acknowledges a client's receipt of a 
message after NiFi Session was commited, thus ensuring no data loss");
    +
    +    static final AllowableValue DUPS_OK = new 
AllowableValue(String.valueOf(Session.DUPS_OK_ACKNOWLEDGE),
    +            "DUPS_OK_ACKNOWLEDGE",
    +            "This acknowledgment mode instructs the session to lazily 
acknowledge the delivery of messages. May result uin both data "
    --- End diff --
    
    Spelling "uin"


> ConsumeJMS processor losses messages on NiFi restart
> ----------------------------------------------------
>
>                 Key: NIFI-2774
>                 URL: https://issues.apache.org/jira/browse/NIFI-2774
>             Project: Apache NiFi
>          Issue Type: Bug
>          Components: Core Framework
>    Affects Versions: 1.0.0, 0.7.0
>            Reporter: Christopher McDermott
>            Assignee: Oleg Zhurakousky
>            Priority: Critical
>             Fix For: 1.1.0, 0.8.0
>
>         Attachments: 2774.patch
>
>
> ConsumeJMS processor uses auto-acknowledge mode.  Unlike the deprecated 
> GetJMSQueue processor it does not provide a way to specify a different ACK 
> mode (i.e. client-acknowledge.)  Using auto-acknowledge, acknowledges message 
> receipt from JMS *before* the messages are actually added to the flow.  This 
> leads to data-loss on NiFi stop (or crash.)
> I believe the fix for this is to allow the user to specify the ACK mode in 
> the processor configuration like is allowed by the GetJMSQueue processor.



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

Reply via email to