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

Craig Patrick commented on NIFI-14944:
--------------------------------------

Reproducible scenario [~pvillard] ...

This is the initial version which i created locally (simple convert record 
processor) along with the root services. I then committed, uploaded to DEV via 
Registry and re-created the same services in the root (as they are not part of 
the PG) and assigned those to the processor:

!image-2025-09-08-16-16-25-968.png!

I then changed the services on my local system to newly created ones in the 
process group, committed them and then updated on the DEV environment to the 
new version. This is the complete log for the update:
{code:java}
2025-09-08 15:18:40,939 INFO [Process Group Update Thread-1] 
o.apache.nifi.web.api.FlowUpdateResource Stopping 0 Processors
2025-09-08 15:18:40,940 INFO [Process Group Update Thread-1] 
o.apache.nifi.web.api.FlowUpdateResource Disabling 0 Controller Services
2025-09-08 15:18:40,944 INFO [Process Group Update Thread-1] 
o.apache.nifi.web.api.VersionsResource Updating Process Group with ID 
29e26ba9-0199-1000-fd66-48ce75b3871d to version 2 of the Versioned Flow
2025-09-08 15:18:40,947 INFO [Process Group Update Thread-1] 
o.a.n.f.s.StandardVersionedComponentSynchronizer Updating 
StandardProcessGroup[identifier=29e26ba9-0199-1000-fd66-48ce75b3871d,name=My 
Process Group] to org.apache.nifi.flow.VersionedExternalFlow@29702480; there 
are 4 differences to take into account:
Controller Service with ID 01991084-aa8d-1f21-73a8-cd3c648ebfca exists in 
Proposed Flow but not in Currently Loaded Flow
Controller Service with ID 01991083-aa8d-1f21-ef39-7d01445c1658 exists in 
Proposed Flow but not in Currently Loaded Flow
Property 'Record Reader' for Processor with ID 
29faf382-f658-38b8-ffc5-ac7812f66eb9 is different
Property 'Record Writer' for Processor with ID 
29faf382-f658-38b8-ffc5-ac7812f66eb9 is different
2025-09-08 15:18:40,966 INFO [Process Group Update Thread-1] 
o.a.nifi.controller.ExtensionBuilder Created Controller Service of type 
org.apache.nifi.csv.CSVRecordSetWriter with identifier 
4212268f-c09e-38a6-7549-50713eb4ead8
2025-09-08 15:18:40,967 INFO [Process Group Update Thread-1] 
o.a.nifi.groups.StandardProcessGroup 
StandardControllerServiceNode[service=CSVRecordSetWriter[id=4212268f-c09e-38a6-7549-50713eb4ead8],
 name=CSVRecordSetWriter, active=false] added to 
StandardProcessGroup[identifier=29e26ba9-0199-1000-fd66-48ce75b3871d,name=My 
Process Group]
2025-09-08 15:18:40,971 INFO [Process Group Update Thread-1] 
o.a.n.f.s.StandardVersionedComponentSynchronizer Added 
StandardControllerServiceNode[service=CSVRecordSetWriter[id=4212268f-c09e-38a6-7549-50713eb4ead8],
 name=PG CSV Writer, active=false] to 
StandardProcessGroup[identifier=29e26ba9-0199-1000-fd66-48ce75b3871d,name=My 
Process Group]
2025-09-08 15:18:40,976 INFO [Process Group Update Thread-1] 
o.a.nifi.controller.ExtensionBuilder Created Controller Service of type 
org.apache.nifi.csv.CSVReader with identifier 
004ae4a9-5d41-31de-260a-db2b5e3695f5
2025-09-08 15:18:40,981 INFO [Process Group Update Thread-1] 
o.a.nifi.groups.StandardProcessGroup 
StandardControllerServiceNode[service=CSVReader[id=004ae4a9-5d41-31de-260a-db2b5e3695f5],
 name=CSVReader, active=false] added to 
StandardProcessGroup[identifier=29e26ba9-0199-1000-fd66-48ce75b3871d,name=My 
Process Group]
2025-09-08 15:18:40,983 INFO [Process Group Update Thread-1] 
o.a.n.f.s.StandardVersionedComponentSynchronizer Added 
StandardControllerServiceNode[service=CSVReader[id=004ae4a9-5d41-31de-260a-db2b5e3695f5],
 name=PG CSV Reader, active=false] to 
StandardProcessGroup[identifier=29e26ba9-0199-1000-fd66-48ce75b3871d,name=My 
Process Group]
2025-09-08 15:18:40,989 INFO [Process Group Update Thread-1] 
o.a.n.f.s.StandardVersionedComponentSynchronizer Updated 
StandardControllerServiceNode[service=CSVRecordSetWriter[id=4212268f-c09e-38a6-7549-50713eb4ead8],
 name=PG CSV Writer, active=false]
2025-09-08 15:18:40,992 INFO [Process Group Update Thread-1] 
o.a.n.f.s.StandardVersionedComponentSynchronizer Updated 
StandardControllerServiceNode[service=CSVReader[id=004ae4a9-5d41-31de-260a-db2b5e3695f5],
 name=PG CSV Reader, active=false]
2025-09-08 15:18:40,993 INFO [Process Group Update Thread-1] 
o.a.n.f.s.StandardVersionedComponentSynchronizer Updated 
ConvertRecord[id=29faf382-f658-38b8-ffc5-ac7812f66eb9]
2025-09-08 15:18:41,005 INFO [Process Group Update Thread-1] 
o.apache.nifi.web.api.FlowUpdateResource Successfully updated flow; re-enabling 
0 Controller Services {code}
As you can see the log shows that it successfully created the new services, and 
also that it changed the properties for the processor to use the new Service 
ID's but when we look at the processor in the UI we get the following:

!image-2025-09-08-16-23-11-521.png!

Refreshing doesn't change it either so I assume it's more than just a UI 
problem?

This was all recreated from scratch so is easy to re-produce if we need to test 
the issue.

_As a side note, changing the parameters to a different service (even one that 
exists outside of the process group) *doesn't trigger a local change request* 
which I think is odd. Surely changing a service reference should be seen as a 
change to a processor which needs to be committed to the registry? If we were 
to switch from say a CSV output to a JSON output that change would definitely 
need to be registered, committed and updated right?_

 

> Updates to services in a processor do not get deployed via Registry despite 
> being detailed in the update
> --------------------------------------------------------------------------------------------------------
>
>                 Key: NIFI-14944
>                 URL: https://issues.apache.org/jira/browse/NIFI-14944
>             Project: Apache NiFi
>          Issue Type: Bug
>          Components: Flow Versioning
>    Affects Versions: 2.0.0
>         Environment: All
>            Reporter: Craig Patrick
>            Priority: Major
>         Attachments: image-2025-09-08-16-16-25-968.png, 
> image-2025-09-08-16-23-11-521.png
>
>
> Not sure if the title make sense - but when making changes to a controller 
> service and then committing those changes into registry it does not seem to 
> take effect when being deployed to the target system.
> Example:
>  * Created a process group ("Working Group") which has some processors which 
> access controller services from the root workflow ("NiFi Flow") - for example 
> a simple CSV Reader and Writer.
>  * Deploy this initial PG to the DEV environment referencing existing 
> controller services from the "root" workflow.
>  * Updated the processors within this process group to now use CSV reader and 
> writer services from the current processor group scope ("Working Group") 
> instead of the root (so they get committed within the group, and can be 
> deployed to any system with the services - and also because we're getting rid 
> of "root controller services")
>  * Commit these changes with the updated references and then deploy these 
> changes to the DEV environment.
>  * Within the update logs, we can see the references to the controller 
> services have been updated and so I would expect those to be updated:
>  ** 
> {code:java}
> Property 'Record Reader' for Processor with ID 
> 7e472cda-8671-36a6-efdd-ce227d6ea8d3 is different
> Controller Service with ID 0fa3447c-0199-1000-1117-34a05a6692cf exists in 
> Proposed Flow but not in Currently Loaded Flow
> Property 'Record Writer' for Processor with ID 
> 66e060ad-6e9f-3c9b-d9b4-227a15dd5b75 is different
> Controller Service with ID 0fa10b90-0199-1000-77af-b54d67c67107 exists in 
> Proposed Flow but not in Currently Loaded Flow{code}
>  * However, when we check the actual processors, they are still referencing 
> the services from the root ("NiFi Flow") scope and not the new services which 
> we have created and deployed. I need to manually make changes to the 
> processor(s) to use the new services instead of the root ones. It's worth 
> noting that this doesn't register as a change which needs to be committed so 
> not sure exactly what is going on, as surely service changes should require a 
> commit?
>  * If this is the case, then maybe it's registering it as changing to the new 
> services but the UI is not updating accordingly and still referencing the old 
> services only in the UI?
>  



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

Reply via email to