To provide closure to this thread:

Bryan, the exception indeed was being thrown there, but the root cause of that was because "Ghost" processors were being created in the place of the actual processors because my custom NAR was confusing BuildUtils.findBundleForType.

Joe, thank you very much for the suggestion of what to look into. We had copied most of the InvokeHTTP processor into our NAR with some modifications, but it was still including references to classes in nifi-standard-processors which was being dragged in through the pom. I was able to extricate the 2 classes I need and copy them into my own project to at least get NiFi up and running; while this is not the correct permanent solution, I was able to move past the startup problems.

Thanks for being part of such a great and responsive community.

- Scott

Bryan Bende <mailto:[email protected]>
Wednesday, July 5, 2017 12:07 PM
Scott,

Thanks for providing the stacktrace... do any of your custom
processors use the @DefaultSchedule annotation? and if so, do any of
them set the tasks to a number less than 1?

The exception you are getting is from some code that is preventing
using 0 or negative number of tasks for a processor that is not
scheduled for event driven, basically meaning event driven is the only
one where it would make sense to have less than 1 task.

What Joe mentioned about including other standard processors in your
NAR could very well still be a problem, but that stacktrace might be
something else.

-Bryan

Scott Wagner <mailto:[email protected]>
Wednesday, July 5, 2017 11:44 AM
Hi Joe,

We are extending AbstractProcessor for our processors, and AbstractControllerService for our controller service. However, we did include the InvokeHTTP processor with some modifications that are referencing some other classes that are in the nifi-processors-standard JAR. I will look into breaking those out to remove that dependency.

    The actual error that we are getting is below:

2017-07-04 12:28:29,076 WARN [main] org.apache.nifi.web.server.JettyServer Failed to start web server... shutting down. org.apache.nifi.controller.serialization.FlowSynchronizationException: java.lang.IllegalArgumentException at org.apache.nifi.controller.StandardFlowSynchronizer.sync(StandardFlowSynchronizer.java:426) at org.apache.nifi.controller.FlowController.synchronize(FlowController.java:1576) 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:533) 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.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:705)
        at org.apache.nifi.NiFi.<init>(NiFi.java:160)
        at org.apache.nifi.NiFi.main(NiFi.java:267)
Caused by: java.lang.IllegalArgumentException: null
at org.apache.nifi.controller.StandardProcessorNode.setMaxConcurrentTasks(StandardProcessorNode.java:620) at org.apache.nifi.controller.StandardFlowSynchronizer.updateProcessor(StandardFlowSynchronizer.java:985) at org.apache.nifi.controller.StandardFlowSynchronizer.addProcessGroup(StandardFlowSynchronizer.java:1064) at org.apache.nifi.controller.StandardFlowSynchronizer.addProcessGroup(StandardFlowSynchronizer.java:1183) at org.apache.nifi.controller.StandardFlowSynchronizer.addProcessGroup(StandardFlowSynchronizer.java:1183) at org.apache.nifi.controller.StandardFlowSynchronizer.addProcessGroup(StandardFlowSynchronizer.java:1183) at org.apache.nifi.controller.StandardFlowSynchronizer.sync(StandardFlowSynchronizer.java:312)
        ... 33 common frames omitted



Joe Witt <mailto:[email protected]>
Wednesday, July 5, 2017 10:57 AM
Scott

In your custom NAR are you extending some other processor/component
such as one found in standard processors? You'll really need to break
that chain and not pull in the same components.

Can you share the actual error being provided at startup/

Thanks
joe
Scott Wagner <mailto:[email protected]>
Wednesday, July 5, 2017 10:53 AM
Hey all,

I have been running on NiFi 1.1.1 for a while, and just started working on migrating to 1.3.0. However, when I tried starting up, I was getting unhandled exceptions during startup of Jetty. I have traced this down to something being wrong with a custom NAR file that we built for 1.1.1.

The problem is when BundleUtils.findBundleForType is being called, it is finding 2 bundles for every internal NiFi processor class - the correct NAR that it comes with in 1.3.0, and my custom NAR file as well. I'm sure that I have done something wrong in the packaging for my custom NAR file, but I don't know what it could be. It was originally built from the NiFi NAR archetype late last year.

If anyone can point in me in the direction of what I'm doing wrong, I would greatly appreciate it. I'm not a maven/packaging expert by any means so no advice is too basic.

Thanks!

- Scott

Reply via email to