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

Bill Kinzel commented on NIFI-14599:
------------------------------------

[~pvillard]

I applied the patch for {*}NIFI-14269{*}, and it successfully resolved the 
issue related to parameter deletion. However, I'm still encountering 
inconsistent behavior related to {*}Parameter Providers and Parameter 
Contexts{*}.

Specifically:
 * On restart, not all secrets are fetched correctly — {*}parameter values are 
sometimes empty{*}, though the {*}keys are consistently imported{*}.

 * When updating or adding new secrets, the {*}fetch operation frequently 
results in missing values{*}, even though the associated parameter keys appear 
as expected.

 * I've observed that modifying the *timeout property* on the parameter 
provider before performing a fetch seems to act as a workaround. Changing the 
timeout appears to "sync" or refresh the provider's state, after which the 
values are reliably fetched again.

As part of troubleshooting, I also removed the *SSL Context Service* from the 
parameter provider definition — just eliminating some unnecessary setup. This 
didn’t appear to affect the behavior but simplified the configuration.

This workaround has made things stable for now, but I haven’t been able to 
identify a consistent pattern to establish a root cause. It seems like there 
may be a caching or state synchronization issue — possibly version-related — 
that isn’t being properly triggered on standard fetch operations or restarts.

> Parameter provider invalid revision issue
> -----------------------------------------
>
>                 Key: NIFI-14599
>                 URL: https://issues.apache.org/jira/browse/NIFI-14599
>             Project: Apache NiFi
>          Issue Type: Bug
>    Affects Versions: 2.1.0, 2.2.0, 2.3.0, 2.4.0, 2.5.0
>            Reporter: Yuanhao Zhu
>            Priority: Major
>         Attachments: image-2025-06-02-09-24-01-141.png
>
>
> We recently upgrade to nifi 2.4.0 from 1.x and have noticed something weird 
> about the parameter provider in 2.x. From time to time, for some reason, the 
> parameter provider will complain about invalid revision given when fetching 
> for parameters with nifi-cli. Specifically we are using 
> AzureKeyvaultParameterProvider. And once this happens, the only way to get 
> rid of it is the re-creation of the parameter provider.
> See the screenshot 
> !https://community.cloudera.com/t5/image/serverpage/image-id/45570i701517E88FD12C48/image-size/large/is-moderation-mode/true?v=v2&px=999!
> And it looks like the revision manager was messed up that every time the new 
> revision is always one version below, we are running nifi in a standalone 
> mode and consecutively triggering of the parameter fetch will constantly get 
> the invalid revision(each time the revision is up by 1) until the parameter 
> provider is recreated, even restarting nifi won't help. I'm also quite sure 
> there is only one person sending request to fetch for parameter and attempt 
> to change the parameter provider at the same time so no concurrent operation. 
>  
> And once this problem happens, fetching parameters from UI also does not 
> work, it would just fail silently and the value of the secrets remains 
> unchanged.
>  
> Also FYI, this never happened in 1.x
>  
> Another FYI, if we restart the nifi container, it does not go away, and the 
> revision number in the complaint will start over from 0
>  
> Steps to reproduce:
>  # Add secrets for multiple groups from the source for the same parameter 
> provider. e.g. add one secret where group-name set to a and one secret where 
> group-name set to b in Azure keyvault.
>  # In Nifi, trigger the existing parameter provider to fetch and update 
> parameter
> Now you should see that the parameter provider failed to be updated in the 
> logs
>  
> I think the exact problem is that when there are more than one parameter 
> contexts related to one parameter provider ,the update for parameter contexts 
> related to a parameter provider is always based on the revision given in the 
> request, after the first parameter context update, the other parameter 
> context update will still try to make the change based on the outdated 
> revision given in the request



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

Reply via email to