[ https://issues.apache.org/jira/browse/NIFI-2774?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15490702#comment-15490702
]
Christopher McDermott edited comment on NIFI-2774 at 9/14/16 3:59 PM:
----------------------------------------------------------------------
Digging into this a little further, I looks like just adding the client acknowledgment mode
is not enough. The code needs to explicitly acknowledge the message after its been added
to the flow if CLIENT_ACKNOWLEDGE is being used. As far as I can tell it does not do that
today. Given that, I am not sure that exposing the ACK mode is even a good idea. Its probably
better to just always use CLIENT_ACKNOWLEDGE, rather than having a "please expose me to data-loss"
setting.
was (Author: chris@mcdermott.net):
Digging into this a little further, I looks like just adding the client acknowledgment mode
is not enough. The code needs to explicitly acknowledge the message after its been added
to the flow if CLIENT_ACKNOWLEDGE is being used. As far as I can tell it does not do that
today. Given that I am not sure that exposing the ACK mode is event a good idea. Its probably
better to just always use CLIENT_ACKNOWLEDGE, rather than having a "please expose me to data-loss"
setting.
> 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, 1.1.0, 0.8.0
> Reporter: Christopher McDermott
> Assignee: Oleg Zhurakousky
> Priority: Critical
> Fix For: 1.1.0, 0.8.0
>
>
> 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)
|