[ 
https://issues.apache.org/jira/browse/NIFI-5098?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Satwik Bhandiwad reassigned NIFI-5098:
--------------------------------------

    Assignee: Satwik Bhandiwad

> NiFi fails to start if invalid NiFi Registry URI is configured in a 
> controller service.
> ---------------------------------------------------------------------------------------
>
>                 Key: NIFI-5098
>                 URL: https://issues.apache.org/jira/browse/NIFI-5098
>             Project: Apache NiFi
>          Issue Type: Bug
>            Reporter: Jeremy Dyer
>            Assignee: Satwik Bhandiwad
>            Priority: Major
>              Labels: SDLC
>
> When configuring a NiFi-registry client within NiFi the user can enter 
> whatever URI they desire. However if the user enters a URI that does not 
> contain http/https the URI is not validated. I typed "htp://" for example 
> instead of "http://";. I restarted nifi and nifi would not restart giving an 
> error in the logs that is included below. This prevented NiFi from starting 
> without first manually fixing the controller service entry for the 
> nifi-registry. This seems to only happen when you "update" the URI for the 
> NiFi-Registry. It seems that client side validation is not occuring when 
> updating the URI. This allows for the system to get in an invalid state if 
> someone updates the URI incorrectly.
>  
>  
> org.apache.nifi.controller.serialization.FlowSynchronizationException: 
> java.lang.IllegalArgumentException: Cannot create Flow Registry with URI of 
> localhost:18080 because there are no known implementations of Flow Registries 
> that can handle URIs of scheme localhost
>  at 
> org.apache.nifi.controller.StandardFlowSynchronizer.sync(StandardFlowSynchronizer.java:474)
>  at 
> org.apache.nifi.controller.FlowController.synchronize(FlowController.java:1622)
>  at 
> org.apache.nifi.persistence.StandardXMLFlowConfigurationDAO.load(StandardXMLFlowConfigurationDAO.java:84)
>  at 
> org.apache.nifi.controller.StandardFlowService.loadFromBytes(StandardFlowService.java:723)
>  at 
> org.apache.nifi.controller.StandardFlowService.load(StandardFlowService.java:534)
>  at 
> org.apache.nifi.web.contextlistener.ApplicationStartupContextListener.contextInitialized(ApplicationStartupContextListener.java:72)
>  at 
> org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:876)
>  at 
> org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:532)
>  at 
> org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:839)
>  at 
> org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:344)
>  at 
> org.eclipse.jetty.webapp.WebAppContext.startWebapp(WebAppContext.java:1480)
>  at 
> org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1442)
>  at 
> org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:799)
>  at 
> org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:261)
>  at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:540)
>  at 
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
>  at 
> org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131)
>  at 
> org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:113)
>  at 
> org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
>  at 
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
>  at 
> org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131)
>  at 
> org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:105)
>  at 
> org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
>  at 
> org.eclipse.jetty.server.handler.gzip.GzipHandler.doStart(GzipHandler.java:290)
>  at 
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
>  at 
> org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131)
>  at 
> org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:113)
>  at 
> org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
>  at 
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
>  at 
> org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131)
>  at org.eclipse.jetty.server.Server.start(Server.java:452)
>  at 
> org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:105)
>  at 
> org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
>  at org.eclipse.jetty.server.Server.doStart(Server.java:419)
>  at 
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
>  at org.apache.nifi.web.server.JettyServer.start(JettyServer.java:798)
>  at org.apache.nifi.NiFi.<init>(NiFi.java:160)
>  at org.apache.nifi.NiFi.main(NiFi.java:268)
> Caused by: java.lang.IllegalArgumentException: Cannot create Flow Registry 
> with URI of localhost:18080 because there are no known implementations of 
> Flow Registries that can handle URIs of scheme localhost
>  at 
> org.apache.nifi.registry.flow.StandardFlowRegistryClient.addFlowRegistry(StandardFlowRegistryClient.java:86)
>  at 
> org.apache.nifi.controller.StandardFlowSynchronizer.sync(StandardFlowSynchronizer.java:349)
>  ... 37 common frames omitted



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to