Uploaded image for project: 'Apache NiFi'
  1. Apache NiFi
  2. NIFI-4028

Wait processor removes cache regardless of the remaing counter

Agile BoardAttach filesAttach ScreenshotVotersStop watchingWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 1.2.0
    • 1.4.0
    • Extensions
    • None

    Description

      Current Wait processor implementation removes cache entry 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:

      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
      

      This should be fixed as follows:

      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'
      

      Attachments

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            pvillard Pierre Villard
            ijokarumawak Koji Kawamura
            Votes:
            0 Vote for this issue
            Watchers:
            4 Stop watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment