Pierre Villard created NIFI-16235:
-------------------------------------
Summary: Support rebasing locally added Controller Services in
versioned Process Groups
Key: NIFI-16235
URL: https://issues.apache.org/jira/browse/NIFI-16235
Project: Apache NiFi
Issue Type: Improvement
Reporter: Pierre Villard
Assignee: Pierre Villard
Versioned Process Group rebase currently rejects all locally added components
because {{COMPONENT_ADDED}} differences have no supported rebase handler. This
prevents otherwise compatible local Controller Service changes from being
preserved when rebasing onto a newer flow version.
Two affected scenarios are:
# *Processor Controller Service reference*
** Version N contains a Processor referencing Controller Service X.
** Locally, Controller Service Y is added and the Processor is changed to
reference Y.
** Version N+1 does not modify that Processor property.
** Rebase should preserve Y and the Processor reference to Y.
# *Dynamic Controller Service references*
** Version N contains Controller Service A with a dynamic property referencing
X.
** Locally, Controller Services Y and Z are added and dynamic properties are
added to A referencing them.
** Version N+1 does not modify A.
** Rebase should preserve Y, Z, and the dynamic references from A.
Add guarded support for {{COMPONENT_ADDED}} differences when the added
component is a {{{}VersionedControllerService{}}}.
The rebase should:
* Allow referenced and unreferenced locally added Controller Services.
* Preserve the complete local Controller Service configuration.
* Insert the service into its surviving parent Process Group.
* Preserve compatible Processor and Controller Service properties referencing
the added service.
* Reject the rebase if the parent Process Group was removed upstream.
* Reject identifier collisions with any component in the target snapshot.
* Keep additions of Processors, Process Groups, ports, connections, and other
component types unsupported.
* Preserve the all-or-nothing rebase behavior.
* Keep preserved changes visible as local modifications against the clean N+1
baseline.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)