You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@nifi.apache.org by Reinhard Sell <se...@dfn-cert.de> on 2022/04/25 15:14:44 UTC

Issue with version controlled inner PG and parameter contexts

Hi,

we are using nested PGs in non-trivial Nifi flows. The flow of one of 
these inner PGs is itself version controlled in Nifi Registry. And this 
inner PG is used in several instances at different places within the 
outer PGs.

Depending on the use case, the instances of the inner PGs need different 
configuration settings.


So far (up to Nifi 1.14) we just assigned different parameter contexts 
to the different instances of the inner PG and it worked fine. All 
instances of the inner PG link back to the same version controlled flow 
in the registry. So it was relatively simple to maintain changes to the 
flow configuration of the inner PG and keep everything consistent.

But now (Nifi 1.16.0) it seems that the name of the parameter context is 
part of the data that is stored in the registry. At least we get 
warnings that the inner PGs have been modified (see attached image). And 
therefore it is now impossible to save the outer PGs to the registry - 
as there are uncommitted changes to the inner PGs.

And of course it's also impossible to commit the inner PGs - at least we 
could not keep them all linked to the same flow in the registry, as they 
are now all assumed to be different.


I'm aware that there have been changes to the parameter contexts and 
that they support inheritance now. Perhaps it's obvious, but I do not 
yet understand if and how we can use this to support our use case.

Any hint would be a great help and very much appreciated.


Just observed: While "Version | Show local changes" lists the modified 
parameter context as local change, the command "Version | Revert local 
changes" does not revert this alleged change. You have to manually 
re-assign the original parameter context (or remove the context, 
depending on what is stored in the registry).


Thanks a lot
Reinhard Sell


-- 
Dr. Reinhard Sell                         (Projekt- u. Entwicklungsteam)
Phone: +49 40 808077-714  Fax: +49 40 808077-556  Mail: sell@dfn-cert.de

DFN-CERT Services GmbH, https://www.dfn-cert.de/
Sitz / Register: Hamburg, AG Hamburg, HRB 88805, Ust-IdNr.: DE 232129737
Nagelsweg 41, 20097 Hamburg, Germany. CEO: Dr. Klaus-Peter Kossakowski

Re: Issue with version controlled inner PG and parameter contexts

Posted by Mark Payne <ma...@hotmail.com>.
Hei Reinhard,

Thanks for reaching out. I believe you’re running into NIFI-9874 [1]. This has been addressed, but hasn’t been released yet. I think a 1.16.1 release will be coming soon, so you should be in good shape once that gets released.

Thanks
-Mark


[1] https://issues.apache.org/jira/browse/NIFI-9874


On Apr 25, 2022, at 11:14 AM, Reinhard Sell <se...@dfn-cert.de>> wrote:

Hi,

we are using nested PGs in non-trivial Nifi flows. The flow of one of these inner PGs is itself version controlled in Nifi Registry. And this inner PG is used in several instances at different places within the outer PGs.

Depending on the use case, the instances of the inner PGs need different configuration settings.


So far (up to Nifi 1.14) we just assigned different parameter contexts to the different instances of the inner PG and it worked fine. All instances of the inner PG link back to the same version controlled flow in the registry. So it was relatively simple to maintain changes to the flow configuration of the inner PG and keep everything consistent.

But now (Nifi 1.16.0) it seems that the name of the parameter context is part of the data that is stored in the registry. At least we get warnings that the inner PGs have been modified (see attached image). And therefore it is now impossible to save the outer PGs to the registry - as there are uncommitted changes to the inner PGs.

And of course it's also impossible to commit the inner PGs - at least we could not keep them all linked to the same flow in the registry, as they are now all assumed to be different.


I'm aware that there have been changes to the parameter contexts and that they support inheritance now. Perhaps it's obvious, but I do not yet understand if and how we can use this to support our use case.

Any hint would be a great help and very much appreciated.


Just observed: While "Version | Show local changes" lists the modified parameter context as local change, the command "Version | Revert local changes" does not revert this alleged change. You have to manually re-assign the original parameter context (or remove the context, depending on what is stored in the registry).


Thanks a lot
Reinhard Sell


--
Dr. Reinhard Sell                         (Projekt- u. Entwicklungsteam)
Phone: +49 40 808077-714  Fax: +49 40 808077-556  Mail: sell@dfn-cert.de<ma...@dfn-cert.de>

DFN-CERT Services GmbH, https://www.dfn-cert.de/
Sitz / Register: Hamburg, AG Hamburg, HRB 88805, Ust-IdNr.: DE 232129737
Nagelsweg 41, 20097 Hamburg, Germany. CEO: Dr. Klaus-Peter Kossakowski<screenshot-nifi-alleged-local-change.png>