Mark Payne created NIP-3:
----------------------------
Summary: Allow components to be notified when cluster topology
changes
Key: NIP-3
URL: https://issues.apache.org/jira/browse/NIP-3
Project: NiFi Improvement Proposal
Issue Type: New Feature
Reporter: Mark Payne
Assignee: Mark Payne
The NiFi API provides several annotations that components can use to have code
triggered or to be notified when things occur. A great example is the
{{@OnPrimaryNodeChange}} annotation.
We should provide the ability for components to be notified when the cluster
topology changes. That is, when a node is added or removed from the cluster.
This should not include when a node's state changes, for example from CONNECTED
to DISCONNECTED or vice versa, but only when the nodes that make up the cluster
change.
The reasoning behind this is for cases in which data is load balanced across
the cluster using an "Attribute Name." When the cluster topology changes, it is
possible that data with attribute {{a=123}} will no longer go to Node 1 but now
go to Node 2. When this happens, Processors, Controller Services, etc. may need
to be notified of this in order to cleanup resources. For example, a Processor
may need to invalidate an internal cache data that corresponded to {{a=123}}
may be outdated, since the data may have moved to another node and now back,
etc.
This will require adding a new annotation to the nifi-api that is scoped the
same as {{@OnPrimaryNodeChange}} (i.e., it has a Target of METHOD, a Retention
of RUNTIME, and is {{{}@Inherited{}}}). It will also require an update to the
framework to call the methods when appropriate.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)