Nick Lawrence created NIFI-7960:
-----------------------------------

             Summary: Instance of an extension processor with parameter 
references causes jetty shutdown with 
FlowSynchronizationException/IllegalArgumentException if the NAR does not exist
                 Key: NIFI-7960
                 URL: https://issues.apache.org/jira/browse/NIFI-7960
             Project: Apache NiFi
          Issue Type: Bug
    Affects Versions: 1.12.1
            Reporter: Nick Lawrence


We created an instance of a custom processor and set a (non-sensitive) property 
'Scope' to a non-sensitive parameter '#\{my_non_sensitive_param}'

 

The NAR for the processor was later removed from the extensions directory, but 
the instance of the processor still existed on the canvas.

 

The server failed startup with the exception:

org.apache.nifi.controller.serialization.FlowSynchronizationException: 
java.lang.IllegalArgumentException: The property 'Scope' is a sensitive 
property, so it can only reference Parameters that are sensitive.
 at 
org.apache.nifi.controller.StandardFlowSynchronizer.sync(StandardFlowSynchronizer.java:306)
 at 
org.apache.nifi.controller.FlowController.synchronize(FlowController.java:1426)
 at 
org.apache.nifi.persistence.StandardXMLFlowConfigurationDAO.load(StandardXMLFlowConfigurationDAO.java:89)
 at 
org.apache.nifi.controller.StandardFlowService.loadFromBytes(StandardFlowService.java:792)
 at 
org.apache.nifi.controller.StandardFlowService.load(StandardFlowService.java:537)
 at 
org.apache.nifi.web.contextlistener.ApplicationStartupContextListener.contextInitialized(ApplicationStartupContextListener.java:72)
 at 
org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:930)
 at 
org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:553)
 at 
org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:889)
 at 
org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:356)
 at org.eclipse.jetty.webapp.WebAppContext.startWebapp(WebAppContext.java:1445)
 at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1409)
 at 
org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:822)
 at 
org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:275)
 at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:524)
 at 
org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
 at 
org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
 at 
org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:117)
 at 
org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97)
 at 
org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
 at 
org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
 at 
org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:110)
 at 
org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97)
 at 
org.eclipse.jetty.server.handler.gzip.GzipHandler.doStart(GzipHandler.java:425)
 at 
org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
 at 
org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
 at 
org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:117)
 at 
org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97)
 at 
org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
 at 
org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
 at 
org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:117)
 at 
org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97)
 at 
org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
 at 
org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
 at org.eclipse.jetty.server.Server.start(Server.java:407)
 at 
org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:110)
 at 
org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97)
 at org.eclipse.jetty.server.Server.doStart(Server.java:371)
 at 
org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
 at org.apache.nifi.web.server.JettyServer.start(JettyServer.java:1052)
 at org.apache.nifi.NiFi.<init>(NiFi.java:158)
 at org.apache.nifi.NiFi.<init>(NiFi.java:72)
 at org.apache.nifi.NiFi.main(NiFi.java:301)
Caused by: java.lang.IllegalArgumentException: The property 'Scope' is a 
sensitive property, so it can only reference Parameters that are sensitive.
 at 
org.apache.nifi.controller.AbstractComponentNode.verifyCanUpdateProperties(AbstractComponentNode.java:300)
 at 
org.apache.nifi.controller.AbstractComponentNode.setProperties(AbstractComponentNode.java:195)
 at 
org.apache.nifi.controller.ComponentNode.setProperties(ComponentNode.java:61)
 at 
org.apache.nifi.controller.StandardFlowSynchronizer.updateProcessor(StandardFlowSynchronizer.java:1249)
 at 
org.apache.nifi.controller.StandardFlowSynchronizer.addProcessors(StandardFlowSynchronizer.java:1398)
 at 
org.apache.nifi.controller.StandardFlowSynchronizer.addProcessGroup(StandardFlowSynchronizer.java:1317)
 at 
org.apache.nifi.controller.StandardFlowSynchronizer.updateFlow(StandardFlowSynchronizer.java:432)
 at 
org.apache.nifi.controller.StandardFlowSynchronizer.sync(StandardFlowSynchronizer.java:283)
 ... 42 common frames omitted
2020-10-28 10:09:47,394 INFO [Thread-1] org.apache.nifi.NiFi Initiating 
shutdown of Jetty web server...
2020-10-28 10:09:47,398 INFO [Thread-1] 
o.eclipse.jetty.server.AbstractConnector Stopped 
ServerConnector@31f9b85e\{HTTP/1.1,[http/1.1]}{0.0.0.0:8080}
2020-10-28 10:09:47,398 INFO [Thread-1] org.eclipse.jetty.server.session node0 
Stopped scavenging




Tried the same experiment with hard coded value for the 'scope' property and 
the server started, the processor was marked invalid on the canvas. (This was 
the expected behavior).

 

Searched for existing issues and discovered NIFI-7012, which may or may not be 
related.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to