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

Add Failure Relationship to UpdateAttribute

Attach filesAttach ScreenshotAdd voteVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    Description

      EL makes it possible for an UpdateAttribute processor to fail. When this happens the FlowFile is rolled back, and there is no way to route it to handle the failure automatically.

      Considerations:

      UpdateAttribute is used in probably all but the simplest of flows, thus any change made to support a failure relationship must be handled delicately. The goal of this change is for users to have no change in functionality unless they specifically configure it.

      Proposal: 

      It was proposed on the Slack channel to create the failure relationship, but default it to auto-terminate. This is a good start, but without further work would result in a change in functionality. I propose that we will default to auto-terminate, but also detect this behavior in the code. If the Failure relationship is set to auto-terminate then we will rollback the transaction.

      The only downside I see with this is you can't actually auto-terminate Failures without the addition of another property, such as Failure Behavior: Route to Failure and Rollback options.

      Attachments

        Issue Links

        Activity

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

          People

            pwicks Peter Wicks
            pwicks Peter Wicks

            Dates

              Created:
              Updated:

              Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0h
                0h
                Logged:
                Time Spent - 3h 10m
                3h 10m

                Slack

                  Issue deployment