Thanks so much for the help Mark.  I'll upgrade my version.

Regards,
Paul

On Thu, Jan 12, 2023 at 12:04 PM Mark Payne <[email protected]> wrote:

> Hey Paul,
>
> Looks like you’re running into
> https://issues.apache.org/jira/browse/NIFI-10246, which was addressed in
> 1.17.0
> When NiFi gets to that point, the service is either in an ENABLING state
> (even though it says it’s enabled, it may just be enabling) or it’s decided
> that it needs to disable the service in order to ensure that the flow is in
> sync with the cluster.
>
> Unfortunately, there was an issue where it would not properly wait for the
> service to be completely DISABLED. It would asynchronously disable the
> service and then go ahead without waiting for that action to complete. That
> produced the issue that you’re seeing in the stack trace.
>
> Thanks
> -Mark
>
>
>
> On Jan 12, 2023, at 11:36 AM, Paul Riddle <[email protected]>
> wrote:
>
> Good Morning NiFi Folks!
>
>
> NiFi Version: 1.16.3
>
>
> Issue: Enabling DistributedMapCacheClient is causing clustered nodes to
> not be able to startup or rejoin cluster after NiFi stop/restart.
>
>
> Scenario:  I am using a DetectDuplicate processor on a 3 node cluster.  I
> have a DistributedMapCacheServer controller service running on one of the 3
> nodes.  It enables and works fine.
>
>
> I also have a DistributeMapCacheClient controller service configured.  It
> appears to enable and work fine.   I run data through DetectDuplicate.  It
> finds duplicates as I would expect it to do.
>
>
> An issue presents itself, however, when NiFi is restarted for any reason.
> If, and only if, the DistributedMapCacheClient service (I verified each
> other service) is set to ENABLED when NiFi initially starts up or tries to
> restart, NiFi  fails to start up and I receive a stack trace in the logs
> that says:
>
>
>
> -----------------------------------------------------------------------------
> “2023-01-12 16:06:59,386 ERROR [main]
> o.a.nifi.controller.StandardFlowService Failed to load flow from cluster
> due to:
> 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.
> 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:1061)
>         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:
> java.lang.IllegalStateException: Cannot modify Controller Service
> configuration because it is currently enabled. Please disable the
> Controller Service
> firs
>                                                      t.
>         at
> org.apache.nifi.controller.serialization.VersionedFlowSynchronizer.synchronizeFlow(VersionedFlowSynchronizer.java:370)
>         at
> org.apache.nifi.controller.serialization.VersionedFlowSynchronizer.sync(VersionedFlowSynchronizer.java:188)
>         at
> org.apache.nifi.controller.serialization.StandardFlowSynchronizer.sync(StandardFlowSynchronizer.java:43)
>         at
> org.apache.nifi.controller.FlowController.synchronize(FlowController.java:1524)
>         at
> org.apache.nifi.persistence.StandardFlowConfigurationDAO.load(StandardFlowConfigurationDAO.java:107)
>         at
> org.apache.nifi.controller.StandardFlowService.loadFromBytes(StandardFlowService.java:819)
>         at
> org.apache.nifi.controller.StandardFlowService.loadFromConnectionResponse(StandardFlowService.java:1030)”
>
>
>
> -----------------------------------------------------------------------------
>
> At first glance it seems that NiFi is trying to modify something within
> the DistributedMapCacheClient service on startup after it is in an ENABLED
> state for some reason.  It appears to be an order of operations issue.
>
>
> Is this a known bug?  Is there some sort of workaround other than
> disabling the controller service every time before I shut NiFi down?
>
>
> Thanks for the Help!
> Paul
>
>
>

Reply via email to