[
https://issues.apache.org/jira/browse/NIFI-15907?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18078469#comment-18078469
]
ASF subversion and git services commented on NIFI-15907:
--------------------------------------------------------
Commit ff8c0181a2f8ddf67cb87e1fff13cab3d9b0d840 in nifi's branch
refs/heads/main from Pierre Villard
[ https://gitbox.apache.org/repos/asf?p=nifi.git;h=ff8c0181a2f ]
NIFI-15907 Handle PROPERTY_PARAMETERIZATION_REMOVED as Local Change (#11207)
Signed-off-by: David Handermann <[email protected]>
> PROPERTY_PARAMETERIZATION_REMOVED showing as local change
> ---------------------------------------------------------
>
> Key: NIFI-15907
> URL: https://issues.apache.org/jira/browse/NIFI-15907
> Project: Apache NiFi
> Issue Type: Bug
> Components: Flow Versioning
> Reporter: Pierre Villard
> Assignee: Pierre Villard
> Priority: Major
> Time Spent: 20m
> Remaining Estimate: 0h
>
> When a processor's _migrateProperties_ removes a property and the existing
> flow had that property bound to a parameter (e.g. {*}#\{MyParam}{*}), the
> registry-side snapshot still carries the parameter reference while the local
> side no longer has the key at all.
> In {_}StandardFlowComparator.compareProperties{_}, this case emits
> *PROPERTY_PARAMETERIZATION_REMOVED* rather than {*}PROPERTY_REMOVED{*},
> because *valueA* is a bare parameter reference and *valueB* is null:
> {code:java}
> } else if (valueA != null && valueB == null) {
> if (isParameterReference(valueA)) {
>
> differences.add(difference(DifferenceType.PROPERTY_PARAMETERIZATION_REMOVED,
> ...));
> } else {
> differences.add(difference(DifferenceType.PROPERTY_REMOVED, ...));
> }
> }
> {code}
> The environmental-change gate _FlowDifferenceFilters.isStaticPropertyRemoved_
> only matches {*}PROPERTY_REMOVED{*}, so the parameterized variant survives
> the filter and shows up as a local modification.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)