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

Controller Services are not fingerprinted other than Controller-Level services

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Blocker
    • Resolution: Fixed
    • None
    • 1.10.0
    • Core Framework
    • None

    Description

      When a node wants to join a cluster, NiFi calculates a fingerprint of the flow. This is largely a concatenation of the flow.xml.gz but with certain elements (such as processor position) removed so that small, inconsequential changes can be ignored. This fingerprint is then used to determine whether or not a node is allowed to join the cluster. If the node's flow fingerprint matches that of the cluster, it is allowed to join (assuming permissions, etc. are in good shape). If the fingerprint does not match, it is rejected. If it does join, those small changes such as Processor position are reconciled by updating the node to match the cluster's flow.

      Apparently, though, Controller Services at the Controller level are included in the fingerprint but Controller Services defined within a Process Group are not. This means that if a node has the wrong value for a Controller Service property, it could still join the cluster and behave differently than the rest of the cluster.

      Attachments

        Issue Links

          Activity

            People

              markap14 Mark Payne
              markap14 Mark Payne
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

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