Created on 10-31-2019 11:51 AM - last edited on 10-31-2019 01:15 PM by cjervis
Hello All,
I have a two nifi nodes and while taking backup moved the flow files to backup folder in both the nodes and restarted NIFI service and my NIFI UI is blank. I restored the flow files back and after restart the NIFI node crashes with the below error.
ERROR [main] o.a.nifi.controller.StandardFlowService Failed to load flow from cluster due to: org.apache.nifi.controller.UninheritableFlowException: Failed to connect node to cluster because local flow is different than cluster flow.
org.apache.nifi.controller.UninheritableFlowException: Failed to connect node to cluster because local flow is different than cluster flow.
Please help.
Created 10-31-2019 12:11 PM
What this error is telling is that the flow.xml.gz on this node does not match the flow.xml.gz that is running on another node.
On startup of all your NiFi nodes an election takes place to determine which flow.xml.gz will be elected as the cluster flow. So node 1 presents its flow (1 vote), then node 2 presents its flow (if it matches node 1's flow that flows vote increases to 2, if not it gets its own singular vote), this process repeats for all nodes joining the cluster until a flow.xml.gz is elected to be the cluster vote. At that point in time, any nodes that have a flow.xml.gz that matched this elected cluster flow will throw the exception you reported and shut back down.
Since all nodes in your cluster must be running the exact same flow.xml.gz, you can copy the flow.xml.gz from one of the nodes that is up and joined in to the cluster to the node that threw the exception and restart it. It should successfully join the cluster at on restart this time.
Hope this helps,
Matt
Created 10-31-2019 12:11 PM
What this error is telling is that the flow.xml.gz on this node does not match the flow.xml.gz that is running on another node.
On startup of all your NiFi nodes an election takes place to determine which flow.xml.gz will be elected as the cluster flow. So node 1 presents its flow (1 vote), then node 2 presents its flow (if it matches node 1's flow that flows vote increases to 2, if not it gets its own singular vote), this process repeats for all nodes joining the cluster until a flow.xml.gz is elected to be the cluster vote. At that point in time, any nodes that have a flow.xml.gz that matched this elected cluster flow will throw the exception you reported and shut back down.
Since all nodes in your cluster must be running the exact same flow.xml.gz, you can copy the flow.xml.gz from one of the nodes that is up and joined in to the cluster to the node that threw the exception and restart it. It should successfully join the cluster at on restart this time.
Hope this helps,
Matt