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

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

Commit 19993783e1bbc3a4590f103d24922b31da870b31 in nifi's branch 
refs/heads/main from Mark Payne
[ https://gitbox.apache.org/repos/asf?p=nifi.git;h=19993783e1 ]

NIFI-12203: Ensure that when inheriting cluster flow on startup, we remove any 
Controller Services, Reporting Tasks, Parameter Contexts, etc. that are not in 
the proposed flow. Also removed overly aggressive timeout from RunOnceIT and 
performed minor code cleanup

Resolves #7907

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


> JSON Sync does not delete controller level items
> ------------------------------------------------
>
>                 Key: NIFI-12203
>                 URL: https://issues.apache.org/jira/browse/NIFI-12203
>             Project: Apache NiFi
>          Issue Type: Bug
>          Components: Core Framework
>    Affects Versions: 2.0.0
>            Reporter: Simon Bence
>            Assignee: Mark Payne
>            Priority: Blocker
>             Fix For: 2.0.0
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> JSON based flow synchronization looks to behave differently than XML in 
> regards of controllel level components: while XML cleans up "removed" 
> components from the current flow, the JSON keeps them. This happens in case 
> of 
> [JoinClusterWithDifferentFlow|https://github.com/apache/nifi/blob/main/nifi-system-tests/nifi-system-test-suite/src/test/java/org/apache/nifi/tests/system/clustering/JoinClusterWithDifferentFlow.java#L240]
>  where components within the root group are "replaced" as the tests expects 
> but the controller level Controller Service is not.
> Running the test using JSON synchronizer results two Controller Services in 
> the memory representation of the flow definition on node 2: both the services 
> from flow1 and flow2 are part of the synced flow.
> After some testing, it looks like  
> [this|https://github.com/apache/nifi/blob/main/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/serialization/VersionedFlowSynchronizer.java#L900]
>  method and other methods in the "inherit*" method family will not clean up 
> components are not present in the proposed flow.



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

Reply via email to