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

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

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

NIFI-15863 - User edits to newly-introduced component properties silently 
classified as environmental changes (#11166)

> User edits to newly-introduced component properties silently classified as 
> environmental changes
> ------------------------------------------------------------------------------------------------
>
>                 Key: NIFI-15863
>                 URL: https://issues.apache.org/jira/browse/NIFI-15863
>             Project: Apache NiFi
>          Issue Type: Bug
>          Components: Flow Versioning
>    Affects Versions: 2.9.0
>            Reporter: Pierre Villard
>            Assignee: Pierre Villard
>            Priority: Major
>          Time Spent: 40m
>  Remaining Estimate: 0h
>
> When a newer bundle declares a static property that did not exist in the 
> versioned flow snapshot, *FlowDifferenceFilters.isPropertyAddedFromMigration* 
> (added in NIFI-15776) classifies the resulting *PROPERTY_ADDED* diff as 
> environmental regardless of value. If the user later edits that property the 
> diff relative to the registry is still *PROPERTY_ADDED* (the property 
> descriptor is absent from the snapshot), so the edit is also swallowed as 
> environmental: the flow is not marked dirty and the change cannot be 
> committed through normal local-change workflows.
> NIFI-15830 refined related behavior but only addressed cases detected through 
> *isNewPropertyWithDefaultValue*, which compares *valueB* against the 
> descriptor default. It did not tighten *isPropertyAddedFromMigration*, which 
> continues to return *true* for any statically-declared property missing from 
> the snapshot, independent of the value. As a result, user edits away from the 
> default on a newly-introduced property remain indistinguishable from the 
> framework-applied default and are still filtered out.
> We need to tighten *isPropertyAddedFromMigration* to only treat a 
> *PROPERTY_ADDED* diff as environmental when *valueB* equals the descriptor's 
> default value. This preserves the NIFI-15776 / NIFI-15830 behavior for bundle 
> upgrades (framework-applied defaults remain filtered), while surfacing 
> genuine user edits as local changes.
> Narrow regression: if a component's *migrateProperties* explicitly assigns a 
> new static property to a non-default value, that value will now show as a 
> local change and the user must commit once after upgrade.



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

Reply via email to