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

Pierre Villard updated NIFI-15541:
----------------------------------
    Description: 
When upgrading a versioned flow that introduces a new child process group, the 
new process group is incorrectly bound to a parameter context matched by name 
rather than using the same parameter context as its parent.

Steps to reproduce:
 # Create a versioned flow v1 with Process Group A attached to Parameter 
Context P
 # Create v2 by adding a child Process Group B inside A, also attached to P
 # Import v1 twice using "do not keep existing parameter context" - this 
creates A1 with P, and A2 with P (1)
 # Upgrade A2 from v1 to v2

Current behavior:

The newly added Process Group B in A2 gets bound to P instead of P (1)

Expected behavior:

Process Group B should use P (1), the same parameter context as its parent A2

Root cause:

In StandardVersionedComponentSynchronizer.updateParameterContext(), when a new 
child process group is added during synchronization, it looks up parameter 
contexts by name globally rather than inheriting from the parent group.

  was:
When upgrading a versioned flow that introduces a new child process group, the 
new process group is incorrectly bound to a parameter context matched by name 
rather than using the same parameter context as its parent.

Steps to reproduce:
 # Create a versioned flow v1 with Process Group A attached to Parameter 
Context P

 # Create v2 by adding a child Process Group B inside A, also attached to P

 # Import v1 twice using "do not keep existing parameter context" - this 
creates A1 with P, and A2 with P (1)

 # Upgrade A2 from v1 to v2

Current behavior:

The newly added Process Group B in A2 gets bound to P instead of P (1)

Expected behavior:

Process Group B should use P (1), the same parameter context as its parent A2

Root cause:

In StandardVersionedComponentSynchronizer.updateParameterContext(), when a new 
child process group is added during synchronization, it looks up parameter 
contexts by name globally rather than inheriting from the parent group.


> Flow version upgrade binds new process groups to incorrect parameter context
> ----------------------------------------------------------------------------
>
>                 Key: NIFI-15541
>                 URL: https://issues.apache.org/jira/browse/NIFI-15541
>             Project: Apache NiFi
>          Issue Type: Bug
>          Components: Core Framework, Flow Versioning
>            Reporter: Pierre Villard
>            Assignee: Pierre Villard
>            Priority: Minor
>
> When upgrading a versioned flow that introduces a new child process group, 
> the new process group is incorrectly bound to a parameter context matched by 
> name rather than using the same parameter context as its parent.
> Steps to reproduce:
>  # Create a versioned flow v1 with Process Group A attached to Parameter 
> Context P
>  # Create v2 by adding a child Process Group B inside A, also attached to P
>  # Import v1 twice using "do not keep existing parameter context" - this 
> creates A1 with P, and A2 with P (1)
>  # Upgrade A2 from v1 to v2
> Current behavior:
> The newly added Process Group B in A2 gets bound to P instead of P (1)
> Expected behavior:
> Process Group B should use P (1), the same parameter context as its parent A2
> Root cause:
> In StandardVersionedComponentSynchronizer.updateParameterContext(), when a 
> new child process group is added during synchronization, it looks up 
> parameter contexts by name globally rather than inheriting from the parent 
> group.



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

Reply via email to