You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by "ASF subversion and git services (Jira)" <ji...@apache.org> on 2022/05/13 19:10:00 UTC

[jira] [Commented] (NIFI-10001) Nifi 1.16.1 trouble starting up due to controller services

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

ASF subversion and git services commented on NIFI-10001:
--------------------------------------------------------

Commit 8031b6235145963c6c8c30d136a9bb9061d625a1 in nifi's branch refs/heads/main from markap14
[ https://gitbox.apache.org/repos/asf?p=nifi.git;h=8031b62351 ]

NIFI-10001: When enabling a collection of Controller Services, change… (#6042)

* NIFI-10001: When enabling a collection of Controller Services, changed logic. Instead of enabling dependent services and waiting for them to complete enablement before starting a given service, just start the services given. The previous logic was necessary long ago because we couldn't enable a service unless all dependent services were fully enabled. But that changed a while ago. Now, we can enable a service when it's invalid. It'll just keep trying to enable until it becomes valid. At that point, it will complete its transition from ENABLING to ENABLED.

* NIFI-10001: Restored previous implementation for StandardControllerServiceProvider, as the changes were not ultimately what we needed. Changed StandardProcessGroup to use a ConcurrentHashMap for controller services instead of a HashMap with readLock. This was causing a deadlock when we enable a Controller Service that references another service during flow synchronization. Flow Synchronization was happening within a write lock and enabling the service required a read lock on the group. Eventually the thread holding the write lock would timeout and release the write lock. But this caused significant delays on startup. By changing to a ConcurrentHashMap, we alleviate the need for the Read Lock. Also noticed in testing that the StandardNiFiServiceFacade did not save flow changes when enabling dependent services so added call to controllerFacade.save().

> Nifi 1.16.1 trouble starting up due to controller services 
> -----------------------------------------------------------
>
>                 Key: NIFI-10001
>                 URL: https://issues.apache.org/jira/browse/NIFI-10001
>             Project: Apache NiFi
>          Issue Type: Bug
>          Components: Core Framework
>    Affects Versions: 1.16.1
>            Reporter: MohammadReza Khedri
>            Priority: Major
>             Fix For: 1.17.0, 1.16.2
>
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> I updated *Apache Nifi* to version *1.16.1* from 1.16.0 today and it took about half an hour to run.
> I looked at the logs and realized that activating the controllers takes a long time. And I had a lot of controllers in my flows.
> So I re-installed the NIFI to the previous version and saw no problems and all the flows ran as quickly as possible.
>  



--
This message was sent by Atlassian Jira
(v8.20.7#820007)