Mark Payne created NIFI-3972:
--------------------------------

             Summary: Controller Service failing to enabled because the service 
it depends on is not fully enabled on nifi restart
                 Key: NIFI-3972
                 URL: https://issues.apache.org/jira/browse/NIFI-3972
             Project: Apache NiFi
          Issue Type: Bug
          Components: Core Framework
            Reporter: Mark Payne
            Assignee: Mark Payne


I have a JsonRecordSetWriter controller service. It depends on a Schema 
Registry controller service. Both are enabled. Upon restart, the 
JsonRecordSetWriter service fails to enable, indicating that the Schema 
Registry service is not enabled. When I look at the Controller Service 
configuration, though, the Schema Registry service is enabled. So it appears 
that the JsonRecordSetWriter was attempting to be enabled before the Schema 
Registry Service finishes enabling.

{code}
2017-05-24 19:46:56,314 ERROR [main] 
o.a.n.c.s.StandardControllerServiceProvider Failed to enable 
JsonRecordSetWriter[id=0d273e88-9bd7-1dd9-ffff-ffffc1e1a536]
java.lang.IllegalStateException: Cannot invoke method public abstract 
java.util.Set 
org.apache.nifi.schemaregistry.services.SchemaRegistry.getSuppliedSchemaFields()
 on Controller Service with identifier 0660348b-255e-1f3a-ffff-fffffb399783 
because the Controller Service is disabled
        at 
org.apache.nifi.controller.service.StandardControllerServiceInvocationHandler.invoke(StandardControllerServiceInvocationHandler.java:84)
        at com.sun.proxy.$Proxy85.getSuppliedSchemaFields(Unknown Source)
        at 
org.apache.nifi.schema.access.SchemaNamePropertyStrategy.<init>(SchemaNamePropertyStrategy.java:42)
        at 
org.apache.nifi.schema.access.SchemaAccessUtils.getSchemaAccessStrategy(SchemaAccessUtils.java:147)
        at 
org.apache.nifi.serialization.SchemaRegistryService.getSchemaAccessStrategy(SchemaRegistryService.java:149)
        at 
org.apache.nifi.serialization.SchemaRegistryService.getSuppliedSchemaFields(SchemaRegistryService.java:128)
        at 
org.apache.nifi.serialization.SchemaRegistryRecordSetWriter.customValidate(SchemaRegistryRecordSetWriter.java:160)
        at 
org.apache.nifi.components.AbstractConfigurableComponent.validate(AbstractConfigurableComponent.java:126)
        at 
org.apache.nifi.controller.AbstractConfiguredComponent.validate(AbstractConfiguredComponent.java:326)
        at 
org.apache.nifi.controller.AbstractConfiguredComponent.isValid(AbstractConfiguredComponent.java:441)
        at 
org.apache.nifi.controller.service.StandardControllerServiceNode.verifyCanEnable(StandardControllerServiceNode.java:301)
        at 
org.apache.nifi.controller.service.StandardControllerServiceProvider.enableControllerService(StandardControllerServiceProvider.java:327)
        at 
org.apache.nifi.controller.service.StandardControllerServiceProvider.enableControllerServiceDependenciesFirst(StandardControllerServiceProvider.java:384)
        at 
org.apache.nifi.controller.service.StandardControllerServiceProvider.enableControllerServices(StandardControllerServiceProvider.java:350)
        at 
org.apache.nifi.controller.FlowController.enableControllerServices(FlowController.java:3271)
        at 
org.apache.nifi.controller.service.ControllerServiceLoader.enableControllerServices(ControllerServiceLoader.java:159)
        at 
org.apache.nifi.controller.service.ControllerServiceLoader.enableControllerServices(ControllerServiceLoader.java:152)
        at 
org.apache.nifi.controller.StandardFlowSynchronizer.addProcessGroup(StandardFlowSynchronizer.java:1042)
        at 
org.apache.nifi.controller.StandardFlowSynchronizer.sync(StandardFlowSynchronizer.java:312)
        at 
org.apache.nifi.controller.FlowController.synchronize(FlowController.java:1554)
        at 
org.apache.nifi.persistence.StandardXMLFlowConfigurationDAO.load(StandardXMLFlowConfigurationDAO.java:84)
        at 
org.apache.nifi.controller.StandardFlowService.loadFromBytes(StandardFlowService.java:722)
        at 
org.apache.nifi.controller.StandardFlowService.load(StandardFlowService.java:452)
        at org.apache.nifi.web.server.JettyServer.start(JettyServer.java:800)
        at org.apache.nifi.NiFi.<init>(NiFi.java:160)
        at org.apache.nifi.NiFi.main(NiFi.java:267)
{code}




--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to