You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by "Pierre Villard (JIRA)" <ji...@apache.org> on 2017/08/03 20:56:00 UTC
[jira] [Updated] (NIFI-4028) Wait processor removes cache
regardless of the remaing counter
[ https://issues.apache.org/jira/browse/NIFI-4028?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Pierre Villard updated NIFI-4028:
---------------------------------
Attachment: WaitNotify_NIFI-4028.xml
Attached a template to reproduce the context / test the patch.
> Wait processor removes cache regardless of the remaing counter
> --------------------------------------------------------------
>
> Key: NIFI-4028
> URL: https://issues.apache.org/jira/browse/NIFI-4028
> Project: Apache NiFi
> Issue Type: Bug
> Components: Extensions
> Affects Versions: 1.2.0
> Reporter: Koji Kawamura
> Assignee: Koji Kawamura
> Attachments: WaitNotify_NIFI-4028.xml
>
>
> Current [Wait processor implementation removes cache entry|https://github.com/apache/nifi/blob/master/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/Wait.java#L438] if it's configured with 'Releasable FlowFile Count' is one, when it finds a wait signal reaches to 'Target Signal Count' no matter how large the current count is.
> This behavior can be problematic, when an user expects the same Signal Identifier to be released multiple FlowFiles one by one while multiple counts to be accumulated by Notify.
> For example this scenario does not work:
> {code}
> 1. Notify notifies to a 'signal-a' + 1 => 'signal-a' = 1
> 2. Notify notifies to a 'signal-a' again, +1 => 'signal-a' = 2
> 3. Wait releases 1 FlowFile, then remove the 'signal-a' => 'signal-a' is removed
> 4. Wait will not be able to release another FlowFile
> {code}
> This should be fixed as follows:
> {code}
> 1. Notify notifies to a 'signal-a' + 1 => 'signal-a' = 1
> 2. Notify notifies to a 'signal-a' again, +1 => 'signal-a' = 2
> 3. Wait releases 1 FlowFile, then update the 'signal-a', -1 => 'signal-a' = 1
> 4. Wait releases another FlowFile, then 'signal-a' becomes 0, remove 'signal-a'
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)