Uploaded image for project: 'CDAP'
  1. CDAP
  2. CDAP-13025

If the Python plugin has a syntax error, deployment fails without error message, and the CDAP logs only have a null pointer exception

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 4.3.1
    • Fix Version/s: None
    • Component/s: Pipeline Plugins, Pipelines
    • Labels:
    • Rank:
      1|i00acf:

      Description

      I have a syntax error in my Python script (using || instead of "or" in a condition). When I run preview, or I deploy the pipeline, I get an red bar without an error message at the top the screen. Looking at the CDAP logs, I see a NullPointerException but no indication what is wrong with my script.

      2017-12-26 09:13:50,133 - ERROR [appfabric-executor-35:c.c.c.c.HttpExceptionHandler@70] - Unexpected error: request=POST /v3/namespaces/default/previews user=<null>:
      java.util.concurrent.ExecutionException: java.lang.RuntimeException: Exception while configuring plugin of type transform and name PythonEvaluator for stage Python: null
      	at com.google.common.util.concurrent.AbstractFuture$Sync.getValue(AbstractFuture.java:294) ~[com.google.guava.guava-13.0.1.jar:na]
      	at com.google.common.util.concurrent.AbstractFuture$Sync.get(AbstractFuture.java:267) ~[com.google.guava.guava-13.0.1.jar:na]
      	at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:96) ~[com.google.guava.guava-13.0.1.jar:na]
      	at co.cask.cdap.internal.app.deploy.pipeline.LocalArtifactLoaderStage.process(LocalArtifactLoaderStage.java:109) ~[na:na]
      	at co.cask.cdap.internal.app.deploy.pipeline.LocalArtifactLoaderStage.process(LocalArtifactLoaderStage.java:55) ~[na:na]
      	at co.cask.cdap.pipeline.AbstractStage.process(AbstractStage.java:52) ~[na:na]
      	at co.cask.cdap.internal.pipeline.SynchronousPipeline.execute(SynchronousPipeline.java:55) ~[na:na]
      	at co.cask.cdap.app.preview.PreviewApplicationManager.deploy(PreviewApplicationManager.java:94) ~[na:na]
      	at co.cask.cdap.internal.app.services.ApplicationLifecycleService.deployApp(ApplicationLifecycleService.java:690) ~[na:na]
      	at co.cask.cdap.internal.app.services.ApplicationLifecycleService.deployApp(ApplicationLifecycleService.java:492) ~[na:na]
      	at co.cask.cdap.internal.app.preview.DefaultPreviewRunner.startPreview(DefaultPreviewRunner.java:146) ~[na:na]
      	at co.cask.cdap.internal.app.preview.DefaultPreviewManager.start(DefaultPreviewManager.java:172) ~[na:na]
      	at co.cask.cdap.gateway.handlers.preview.PreviewHttpHandler.start(PreviewHttpHandler.java:99) ~[na:na]
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_60]
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_60]
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_60]
      	at java.lang.reflect.Method.invoke(Method.java:497) ~[na:1.8.0_60]
      	at co.cask.http.HttpMethodInfo.invoke(HttpMethodInfo.java:80) ~[co.cask.http.netty-http-0.16.0.jar:na]
      	at co.cask.http.HttpDispatcher.messageReceived(HttpDispatcher.java:38) [co.cask.http.netty-http-0.16.0.jar:na]
      	at org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:70) [io.netty.netty-3.6.6.Final.jar:na]
      	at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564) [io.netty.netty-3.6.6.Final.jar:na]
      	at org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:791) [io.netty.netty-3.6.6.Final.jar:na]
      	at org.jboss.netty.handler.execution.ChannelUpstreamEventRunnable.doRun(ChannelUpstreamEventRunnable.java:43) [io.netty.netty-3.6.6.Final.jar:na]
      	at org.jboss.netty.handler.execution.ChannelEventRunnable.run(ChannelEventRunnable.java:67) [io.netty.netty-3.6.6.Final.jar:na]
      	at org.jboss.netty.handler.execution.OrderedMemoryAwareThreadPoolExecutor$ChildExecutor.run(OrderedMemoryAwareThreadPoolExecutor.java:314) [io.netty.netty-3.6.6.Final.jar:na]
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_60]
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_60]
      	at java.lang.Thread.run(Thread.java:745) [na:1.8.0_60]
      Caused by: java.lang.RuntimeException: Exception while configuring plugin of type transform and name PythonEvaluator for stage Python: null
      	at co.cask.cdap.etl.spec.PipelineSpecGenerator.configurePlugin(PipelineSpecGenerator.java:347) ~[na:na]
      	at co.cask.cdap.etl.spec.PipelineSpecGenerator.configureStage(PipelineSpecGenerator.java:257) ~[na:na]
      	at co.cask.cdap.etl.spec.PipelineSpecGenerator.configureStages(PipelineSpecGenerator.java:147) ~[na:na]
      	at co.cask.cdap.etl.batch.BatchPipelineSpecGenerator.generateSpec(BatchPipelineSpecGenerator.java:56) ~[na:na]
      	at co.cask.cdap.etl.batch.BatchPipelineSpecGenerator.generateSpec(BatchPipelineSpecGenerator.java:34) ~[na:na]
      	at co.cask.cdap.datapipeline.DataPipelineApp.configure(DataPipelineApp.java:80) ~[na:na]
      	at co.cask.cdap.api.app.AbstractApplication.configure(AbstractApplication.java:65) ~[na:na]
      	at co.cask.cdap.internal.app.deploy.InMemoryConfigurator.getSpecJson(InMemoryConfigurator.java:160) ~[na:na]
      	at co.cask.cdap.internal.app.deploy.InMemoryConfigurator.createResponse(InMemoryConfigurator.java:126) ~[na:na]
      	at co.cask.cdap.internal.app.deploy.InMemoryConfigurator.config(InMemoryConfigurator.java:116) ~[na:na]
      	at co.cask.cdap.internal.app.deploy.pipeline.LocalArtifactLoaderStage.process(LocalArtifactLoaderStage.java:108) ~[na:na]
      	... 24 common frames omitted
      Caused by: org.python.core.PySyntaxError: null
      	at org.python.core.ParserFacade.fixParseError(ParserFacade.java:92) ~[na:na]
      	at org.python.core.ParserFacade.parseExpressionOrModule(ParserFacade.java:130) ~[na:na]
      	at org.python.util.PythonInterpreter.compile(PythonInterpreter.java:259) ~[na:na]
      	at org.python.util.PythonInterpreter.compile(PythonInterpreter.java:256) ~[na:na]
      	at org.python.util.PythonInterpreter.compile(PythonInterpreter.java:250) ~[na:na]
      	at co.cask.hydrator.plugin.transform.PythonEvaluator.init(PythonEvaluator.java:380) ~[na:na]
      	at co.cask.hydrator.plugin.transform.PythonEvaluator.configurePipeline(PythonEvaluator.java:168) ~[na:na]
      	at co.cask.cdap.etl.spec.PipelineSpecGenerator.configurePlugin(PipelineSpecGenerator.java:344) ~[na:na]
      	... 34 common frames omitted
      

        Attachments

          Activity

            People

            • Assignee:
              bhooshan Bhooshan Mogal
              Reporter:
              andreas Andreas Neumann
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated: