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/04/04 18:30:00 UTC

[jira] [Commented] (NIFI-9839) NiFi fails to startup/join cluster if dataflow consists solely of Controller Services and Reporting Tasks

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

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

Commit beb20ddc4ad5c0f8d50f9a232848f60f5484f2f0 in nifi's branch refs/heads/support/nifi-1.16 from markap14
[ https://gitbox.apache.org/repos/asf?p=nifi.git;h=beb20ddc4a ]

NIFI-9839: Fixed bug in which Process Group would return true for isEmpty even if it has a Controller Service (#5910)



> NiFi fails to startup/join cluster if dataflow consists solely of Controller Services and Reporting Tasks
> ---------------------------------------------------------------------------------------------------------
>
>                 Key: NIFI-9839
>                 URL: https://issues.apache.org/jira/browse/NIFI-9839
>             Project: Apache NiFi
>          Issue Type: Bug
>          Components: Core Framework
>    Affects Versions: 1.16.0
>            Reporter: Mark Payne
>            Assignee: Mark Payne
>            Priority: Major
>             Fix For: 1.16.1
>
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> To replicate:
>  # Start a cluster
>  # Add one or more controller services to the Root Process Group. Do not add any processors, labels, funnels, ports, etc.
>  # Restart cluster
> This will result in a stack trace along the lines of:
> {code:java}
> 2022-03-28 11:24:28,230 ERROR org.apache.nifi.web.server.JettyServer: Unable to load flow due to: java.io.IOException: org.apache.nifi.controller.serialization.FlowSynchronizationException: Failed to connect node to cluster because local flow controller partially updated. Administrator should disconnect node and review flow for corruption.
> java.io.IOException: org.apache.nifi.controller.serialization.FlowSynchronizationException: Failed to connect node to cluster because local flow controller partially updated. Administrator should disconnect node and review flow for corruption.
> 	at org.apache.nifi.controller.StandardFlowService.load(StandardFlowService.java:524)
> 	at org.apache.nifi.web.server.JettyServer.start(JettyServer.java:1086)
> 	at org.apache.nifi.NiFi.<init>(NiFi.java:170)
> 	at org.apache.nifi.NiFi.<init>(NiFi.java:82)
> 	at org.apache.nifi.NiFi.main(NiFi.java:330)
> Caused by: org.apache.nifi.controller.serialization.FlowSynchronizationException: Failed to connect node to cluster because local flow controller partially updated. Administrator should disconnect node and review flow for corruption.
> 	at org.apache.nifi.controller.StandardFlowService.loadFromConnectionResponse(StandardFlowService.java:1057)
> 	at org.apache.nifi.controller.StandardFlowService.load(StandardFlowService.java:520)
> 	... 4 common frames omitted
> Caused by: org.apache.nifi.controller.serialization.FlowSynchronizationException: java.lang.IllegalStateException: The specified observer identifier (bulletin-observer) already exists.
> 	at org.apache.nifi.controller.serialization.VersionedFlowSynchronizer.synchronizeFlow(VersionedFlowSynchronizer.java:362)
> 	at org.apache.nifi.controller.serialization.VersionedFlowSynchronizer.sync(VersionedFlowSynchronizer.java:185)
> 	at org.apache.nifi.controller.serialization.StandardFlowSynchronizer.sync(StandardFlowSynchronizer.java:43)
> 	at org.apache.nifi.controller.FlowController.synchronize(FlowController.java:1479)
> 	at org.apache.nifi.persistence.StandardFlowConfigurationDAO.load(StandardFlowConfigurationDAO.java:104)
> 	at org.apache.nifi.controller.StandardFlowService.loadFromBytes(StandardFlowService.java:815)
> 	at org.apache.nifi.controller.StandardFlowService.loadFromConnectionResponse(StandardFlowService.java:1026)
> 	... 5 common frames omitted
> Caused by: java.lang.IllegalStateException: The specified observer identifier (bulletin-observer) already exists.
> 	at org.apache.nifi.logging.repository.StandardLogRepository.addObserver(StandardLogRepository.java:169)
> 	at org.apache.nifi.controller.flow.StandardFlowManager.createControllerService(StandardFlowManager.java:490)
> 	at org.apache.nifi.groups.StandardProcessGroupSynchronizer.addControllerService(StandardProcessGroupSynchronizer.java:1033)
> 	at org.apache.nifi.groups.StandardProcessGroupSynchronizer.synchronizeControllerServices(StandardProcessGroupSynchronizer.java:457)
> 	at org.apache.nifi.groups.StandardProcessGroupSynchronizer.synchronize(StandardProcessGroupSynchronizer.java:339)
> 	at org.apache.nifi.groups.StandardProcessGroupSynchronizer.lambda$synchronize$0(StandardProcessGroupSynchronizer.java:221)
> 	at org.apache.nifi.controller.flow.AbstractFlowManager.withParameterContextResolution(AbstractFlowManager.java:462)
> 	at org.apache.nifi.groups.StandardProcessGroupSynchronizer.synchronize(StandardProcessGroupSynchronizer.java:219)
> 	at org.apache.nifi.groups.StandardProcessGroup.synchronizeFlow(StandardProcessGroup.java:3830)
> 	at org.apache.nifi.controller.serialization.VersionedFlowSynchronizer.synchronizeFlow(VersionedFlowSynchronizer.java:353)
> 	... 11 common frames omitted {code}
> However, if any other components are added to the root group, such as a process or a child process group, this won't happen.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)