Uploaded image for project: 'Zeppelin'
  1. Zeppelin
  2. ZEPPELIN-4879

Error when using `useAuth` as true in the initiation of Gateway server

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Labels:
    • Environment:

      Python: 3.6

      Os: Ubuntu 20.04

      Zeppelin-Python: 0.9.preview1

      Zeppelin-Interpreter: 0.9.preview1

      py4J: 0.10.7 (I checked it has a builder )

      Description

      I want to set my Server address. I could not use the previous version(before/from 0.8.2 does not have an API to set different IP addresses). The code starts to interpret while setting the property as false for useAuth. But fails when true( By default useAuth is true).

      properties.setProperty("zeppelin.py4j.useAuth","true");
      

      Checked the error initiated from this line in `PythonUtils.class`

      Class clz = Class.forName("py4j.GatewayServer$GatewayServerBuilder", true, Thread.currentThread().getContextClassLoader());
      
      SEVERE: Exception while executing runnable io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1MessagesAvailable@623cf93
      java.lang.NullPointerException
              at io.grpc.stub.ClientCalls$StreamObserverToCallListenerAdapter.onClose(ClientCalls.java:434)
              at io.grpc.PartialForwardingClientCallListener.onClose(PartialForwardingClientCallListener.java:39)
              at io.grpc.ForwardingClientCallListener.onClose(ForwardingClientCallListener.java:23)
              at io.grpc.ForwardingClientCallListener$SimpleForwardingClientCallListener.onClose(ForwardingClientCallListener.java:40)
              at io.grpc.internal.CensusStatsModule$StatsClientInterceptor$1$1.onClose(CensusStatsModule.java:678)
              at io.grpc.PartialForwardingClientCallListener.onClose(PartialForwardingClientCallListener.java:39)
              at io.grpc.ForwardingClientCallListener.onClose(ForwardingClientCallListener.java:23)
              at io.grpc.ForwardingClientCallListener$SimpleForwardingClientCallListener.onClose(ForwardingClientCallListener.java:40)
              at io.grpc.internal.CensusTracingModule$TracingClientInterceptor$1$1.onClose(CensusTracingModule.java:403)
              at io.grpc.internal.ClientCallImpl.closeObserver(ClientCallImpl.java:459)
              at io.grpc.internal.ClientCallImpl.access$300(ClientCallImpl.java:63)
              at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl.close(ClientCallImpl.java:546)
              at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl.access$600(ClientCallImpl.java:467)
              at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1MessagesAvailable.runInContext(ClientCallImpl.java:531)
              at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37)
              at io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:123)
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
              at java.lang.Thread.run(Thread.java:748)
      
      org.apache.zeppelin.interpreter.InterpreterException: org.apache.zeppelin.interpreter.InterpreterException: java.io.IOException: java.lang.ClassNotFoundException: py4j.GatewayServer$GatewayServerBuilder
              at org.apache.zeppelin.interpreter.LazyOpenInterpreter.open(LazyOpenInterpreter.java:76)
              at org.apache.zeppelin.interpreter.LazyOpenInterpreter.interpret(LazyOpenInterpreter.java:107)
              at io.jenkins.plugins.ml.IPythonKernelInterpreter.interpretCode(IPythonKernelInterpreter.java:77)
              at io.jenkins.plugins.ml.IPythonInterpreterManager.invokeInterpreter(IPythonInterpreterManager.java:90)
              at io.jenkins.plugins.ml.IPythonBuilder.perform(IPythonBuilder.java:51)
              at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
              at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:744)
              at hudson.model.Build$BuildExecution.build(Build.java:206)
              at hudson.model.Build$BuildExecution.doRun(Build.java:163)
              at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:504)
              at hudson.model.Run.execute(Run.java:1816)
              at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
              at hudson.model.ResourceController.execute(ResourceController.java:97)
              at hudson.model.Executor.run(Executor.java:429)
      Caused by: org.apache.zeppelin.interpreter.InterpreterException: java.io.IOException: java.lang.ClassNotFoundException: py4j.GatewayServer$GatewayServerBuilder
              at org.apache.zeppelin.python.IPythonInterpreter.open(IPythonInterpreter.java:117)
              at org.apache.zeppelin.interpreter.LazyOpenInterpreter.open(LazyOpenInterpreter.java:70)
              ... 13 more
      Caused by: java.io.IOException: java.lang.ClassNotFoundException: py4j.GatewayServer$GatewayServerBuilder
              at org.apache.zeppelin.python.PythonUtils.createGatewayServer(PythonUtils.java:58)
              at org.apache.zeppelin.python.IPythonInterpreter.setupJVMGateway(IPythonInterpreter.java:122)
              at org.apache.zeppelin.python.IPythonInterpreter.open(IPythonInterpreter.java:113)
              ... 14 more
      Caused by: java.lang.ClassNotFoundException: py4j.GatewayServer$GatewayServerBuilder
              at org.jenkinsci.maven.plugins.hpi.JettyAndServletApiOnlyClassLoader.findClass(JettyAndServletApiOnlyClassLoader.java:38)
              at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
              at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
              at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:560)
              at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
              at java.lang.Class.forName0(Native Method)
              at java.lang.Class.forName(Class.java:348)
              at org.apache.zeppelin.python.PythonUtils.createGatewayServer(PythonUtils.java:46)
              ... 16 more
      
      

      It runs after setting useAuth as false.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              loghijiaha Loghi Perinpanayagam
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated: