[ 
https://issues.apache.org/jira/browse/NIFI-16114?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Secules updated NIFI-16114:
--------------------------------
    Description: 
I ran into this bug in version 2.10 but it looks like it was introduced in 2.5

Preconditions:
 * a versioned process group has a processor with a property referencing a 
parameter context
 * A new version of the versioned flow is published to the registry via a flow 
registry client.
 * a new property is added to the processor with a sane default value and this 
is added to a nar OR the new flow version changes an existing non property on a 
versioned processor
 * NiFi is reloaded with the updated nar (if going with the new property 
precondition)

The bug:
 * The versioned process group is updated to the latest version
 * Immediately, the process group is said to have "local changes" which state 
that the property is no longer referencing a parameter, but instead has the 
concrete value of the controller service.
 * No local changes mention the new processor property that is not in the 
versioned flow but exists on the processor.

What I expect to happen:
 * When i update the versioned process group to the latest version, all the 
properties are the same as they are in the latest version.
 * If we must show a local difference, it should be that the processor has a 
new property that is unknown to the versioned flow.

I will create a unit test exposing the bug on my fork of NiFi and put the 
[*link here* 
|https://github.com/esecules/nifi/blame/NIFI-16114-repro-unit-test/nifi-framework-bundle/nifi-framework/nifi-framework-components/src/test/java/org/apache/nifi/flow/synchronization/StandardVersionedComponentSynchronizerTest.java#L1026C27-L1026C27]

  was:
I ran into this bug in version 2.10 but it looks like it was introduced in 2.5

Preconditions:
 * a versioned process group has a processor with a property referencing a 
parameter context
 * A new version of the versioned flow is published to the registry via a flow 
registry client.
 * a new property is added to the processor with a sane default value and this 
is added to a nar OR the new flow version changes an existing non property on a 
versioned processor
 * NiFi is reloaded with the updated nar (if going with the new property 
precondition)

The bug:
 * The versioned process group is updated to the latest version
 * Immediately, the process group is said to have "local changes" which state 
that the property is no longer referencing a parameter, but instead has the 
concrete value of the controller service.
 * No local changes mention the new processor property that is not in the 
versioned flow but exists on the processor.

What I expect to happen:
 * When i update the versioned process group to the latest version, all the 
properties are the same as they are in the latest version.
 * If we must show a local difference, it should be that the processor has a 
new property that is unknown to the versioned flow.

I will create a unit test exposing the bug on my fork of NiFi and put the link 
here.


> NiFi Versioned Flow Upgrade Can Cause Controller Service Parameter Dereference
> ------------------------------------------------------------------------------
>
>                 Key: NIFI-16114
>                 URL: https://issues.apache.org/jira/browse/NIFI-16114
>             Project: Apache NiFi
>          Issue Type: Bug
>    Affects Versions: 2.5.0, 2.6.0, 2.7.0, 2.8.0, 2.7.1, 2.7.2, 2.9.0, 2.10.0
>            Reporter: Eric Secules
>            Priority: Minor
>
> I ran into this bug in version 2.10 but it looks like it was introduced in 2.5
> Preconditions:
>  * a versioned process group has a processor with a property referencing a 
> parameter context
>  * A new version of the versioned flow is published to the registry via a 
> flow registry client.
>  * a new property is added to the processor with a sane default value and 
> this is added to a nar OR the new flow version changes an existing non 
> property on a versioned processor
>  * NiFi is reloaded with the updated nar (if going with the new property 
> precondition)
> The bug:
>  * The versioned process group is updated to the latest version
>  * Immediately, the process group is said to have "local changes" which state 
> that the property is no longer referencing a parameter, but instead has the 
> concrete value of the controller service.
>  * No local changes mention the new processor property that is not in the 
> versioned flow but exists on the processor.
> What I expect to happen:
>  * When i update the versioned process group to the latest version, all the 
> properties are the same as they are in the latest version.
>  * If we must show a local difference, it should be that the processor has a 
> new property that is unknown to the versioned flow.
> I will create a unit test exposing the bug on my fork of NiFi and put the 
> [*link here* 
> |https://github.com/esecules/nifi/blame/NIFI-16114-repro-unit-test/nifi-framework-bundle/nifi-framework/nifi-framework-components/src/test/java/org/apache/nifi/flow/synchronization/StandardVersionedComponentSynchronizerTest.java#L1026C27-L1026C27]



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

Reply via email to