[ 
https://issues.apache.org/jira/browse/NIFI-16235?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18117746#comment-18117746
 ] 

ASF subversion and git services commented on NIFI-16235:
--------------------------------------------------------

Commit 6b1116e4b7f087b91143d3a1fe1118f50579b617 in nifi's branch 
refs/heads/main from Pierre Villard
[ https://gitbox.apache.org/repos/asf?p=nifi.git;h=6b1116e4b7f ]

NIFI-16235 Support rebasing locally added Controller Services in versioned 
Process Groups (#11571)

Signed-off-by: David Handermann <[email protected]>

> 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
>            Priority: Major
>          Time Spent: 50m
>  Remaining Estimate: 0h
>
> 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)

Reply via email to