You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by "Pierre Villard (Jira)" <ji...@apache.org> on 2026/10/22 14:46:00 UTC
[jira] [Created] (NIFI-16490) Return cluster members from the cluster coordinator during flow synchronization
Pierre Villard created NIFI-16490:
-------------------------------------
Summary: Return cluster members from the cluster coordinator during flow synchronization
Key: NIFI-16490
URL: https://issues.apache.org/jira/browse/NIFI-16490
Project: Apache NiFi
Issue Type: Improvement
Components: Core Framework
Reporter: Pierre Villard
Assignee: Pierre Villard
FlowController.getClusterMembers() currently returns an empty set until isClustered() is true. When a node connects to a cluster, StandardFlowService.loadFromConnectionResponse loads the full list of node connection statuses from the connection response into the local cluster coordinator (initializeNodeConnectionState). It does this before the flow sync (loadFromBytes) runs. However, clustered is only set to true after the sync completes.
Controller Services and other components are enabled during that sync. During that window, NodeTypeProvider.getClusterMembers() returns nothing, even though the node already knows the cluster membership, joining node included. So components cannot tell a single-node cluster restarting apart from a node joining an existing multi-node cluster. Either case looks like zero members.
This change updates getClusterMembers() to return the coordinator's node list whenever the node is configured for clustering, not only once isClustered() is true. Reading the list requires no FlowController locks, consistent with NIFI-16153 and NIFI-16383. Standalone (non-clustered) instances keep returning an empty set.
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)