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

Perform component validation asynchronously

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments


    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 1.7.0
    • None
    • None


      I created a flow that is a self referencing http loop. The flow was working fine but I wanted to save the template for later testing. I downloaded the the flow as a template. Then I tried testing a thread.sleep in the beginning of onConfigured, createSSLContext, and validate methods of StandardSSLContextService. I did a mvn clean install in the nifi-nar-bundles/nifi-standard-services/nifi-ssl-context-bundle/nifi-ssl-context-service directory. Then a mvn clean install in the nifi-assembly directory. After I imported the template the UI became very slow when clicking to different windows of the UI such as configuring a processor and the controller services window.

      I then stashed my changes and rebuilt the files. Once again I imported my template, and attempting to configure a processor or accessing the controller services window became very slow.

      The flow xml is attached.


      The description and attachment showed an issue where long running validation caused the UI to become unresponsive. This validation should be done asynchronously so that the UI always remains responsive. Initial thoughts...

      • new state to indicate that validation is in progress
      • a mechanism for refreshing validation results
      • time out for waiting for validation to complete? or need to always be validating all components in case their validity is based on something environmental (like a configuration file that is modified outside of the application)?
      • provide better support for components that are running and become invalid
        • related to this we need to provide guidance regarding the difference between become invalid and when we should use features like bulletins and yielding to rely runtime issues


        Issue Links


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


            markap14 Mark Payne
            jpercivall Joe Percivall
            0 Vote for this issue
            5 Start watching this issue




                Issue deployment