[ 
https://issues.apache.org/jira/browse/NIFI-11333?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Mark Payne updated NIFI-11333:
------------------------------
    Description: 
In 1.16 we allows users to start updating flows while nodes are disconnected. 
This has been greatly helpful. However, it can lead to a problem: when a user 
removes a connection and there's data queued on a disconnected node, that 
disconnected node can no longer rejoin the cluster. Instead, it remains 
disconnected; and if the node is shutdown, it cannot be restarted without 
manually changing nifi.properties to change it from a clustered not to a 
standalone node, then restarting, and bleeding the data out, shutting down, 
manually updating properties to make it a clustered node again; and restarting.

This is painful. Instead, we should simply disallow the removal of any 
component unless all nodes in the cluster are connected. Components can still 
be added, started, stopped, and disabled. Just not removed.

  was:
In 1.16 we allows users to start updating flows while nodes are disconnected. 
This has been greatly helpful. However, it can lead to a problem: when a user 
removes a connection and there's data queued on a disconnected node, that 
disconnected node can no longer rejoin the cluster. Instead, it remains 
disconnected; and if the node is shutdown, it cannot be restarted without 
manually changing nifi.properties to change it from a clustered not to a 
standalone node, then restarting, and bleeding the data out, shutting down, 
manually updating properties to make it a clustered node again; and restarting.

This is painful. And it is necessary because of the guardrails that have been 
put into place in order to ensure that nodes won't drop data. However, in this 
case, the user has already explicitly indicated that they want to delete the 
connection. We should instead just drop the data that lives in that connection, 
log an INFO-level notice that the data was dropped as instructed, and continue 
on.


> Disable removing components unless all nodes connected
> ------------------------------------------------------
>
>                 Key: NIFI-11333
>                 URL: https://issues.apache.org/jira/browse/NIFI-11333
>             Project: Apache NiFi
>          Issue Type: Improvement
>          Components: Core Framework
>            Reporter: Mark Payne
>            Priority: Major
>             Fix For: 2.latest
>
>
> In 1.16 we allows users to start updating flows while nodes are disconnected. 
> This has been greatly helpful. However, it can lead to a problem: when a user 
> removes a connection and there's data queued on a disconnected node, that 
> disconnected node can no longer rejoin the cluster. Instead, it remains 
> disconnected; and if the node is shutdown, it cannot be restarted without 
> manually changing nifi.properties to change it from a clustered not to a 
> standalone node, then restarting, and bleeding the data out, shutting down, 
> manually updating properties to make it a clustered node again; and 
> restarting.
> This is painful. Instead, we should simply disallow the removal of any 
> component unless all nodes in the cluster are connected. Components can still 
> be added, started, stopped, and disabled. Just not removed.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to