[
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)