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

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

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

NIFI-15774: Consolidate checks for whether or not a component must be updated 
when applying flow differences; ensure on flow change rollback we resolve 
compatible bundles; added system tests to verify behavior; minor updates to 
cursor rules to avoid violations of code style and best practices

This closes #11085.

Signed-off-by: Pierre Villard <[email protected]>


> When changing version of flow, many Processors became Ghosted even though 
> only 1 version available
> --------------------------------------------------------------------------------------------------
>
>                 Key: NIFI-15774
>                 URL: https://issues.apache.org/jira/browse/NIFI-15774
>             Project: Apache NiFi
>          Issue Type: Bug
>          Components: Core Framework
>            Reporter: Mark Payne
>            Assignee: Mark Payne
>            Priority: Major
>          Time Spent: 50m
>  Remaining Estimate: 0h
>
> I had the following situation.
> I have a versioned flow tracking to version 38 of a flow.
> Upgraded NiFi to latest version.
> Then decided to update to version 39 of the flow.
> When attempting to upgrade to version 39 of the flow, the following events 
> occurred:
>  * Between versions 38 and 39, the auto-terminated Relationships changed for 
> a Processor. But the newly terminated Relationship was also newly added to 
> the Processor.
>  * NiFi logged that it was stopping 0 Processors in order to perform the 
> update.
>  * NiFi then attempted to update the Processor because its auto-terminated 
> Relationships were changed.
>  * This caused an IllegalStateException to be thrown, failing the upgrade
>  * Because of this, NiFi decided to rollback to the previous version.
>  * But when we rollback to the previous version, it appears that NiFi does 
> NOT resolve compatible bundles for components like we do in the happy path. 
> As a result, the rollback forced the version of components to an invalid 
> version.
>  * Now I ended up with many Ghosted Processors. Not just the one Processor 
> that was updated but all Processors because the rollback forced an old 
> version (whatever was specified in the Versioned Flow).
> One could argue that this should be separated into two separate Jiras, one 
> for the fact that we attempted to update the Processor without stopping it; 
> and one for the fact that the rollback did not resolve bundles. However, I'm 
> combining them into a single Jira because all of this happened as the result 
> of a single user action (update flow version) and has a single apparent 
> result to the user.



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

Reply via email to