Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ZEPPELIN-5165]. fix bug in interpreter.cmd-0.9.0 Windows #3995

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

kr11
Copy link

@kr11 kr11 commented Dec 18, 2020

What is this PR for?

  • For zeppelin-0.9.0, Windows, bin\interpreter.cmd calls RemoteInterpreterServer but misses groupId paramters, resulting in ArrayIndexOutOfBoundsException when any paragraphs are executed.

What type of PR is it?

[Bug Fix]

Todos

  • - change bin\interpreter.cmd

What is the Jira issue?

How should this be tested?

  • Running zeppelin 0.9.0 on Windows.

Screenshots (if appropriate)

The bug snapshot:
image

@kr11 kr11 changed the title [ZEPPELIN-5165]. fix bug in zeppelin.cmd-0.9.0 Windows [ZEPPELIN-5165]. fix bug in interpreter.cmd-0.9.0 Windows Dec 18, 2020
@kr11
Copy link
Author

kr11 commented Dec 19, 2020

Sorry, I don't know why changing the .cmd file causes core / test-core-modules (hadoop2) failed above. Could anyone help me? Thanks.

@Reamer
Copy link
Contributor

Reamer commented Dec 21, 2020

I have restarted the CI process.

@kr11
Copy link
Author

kr11 commented Dec 22, 2020

I have restarted the CI process.

Hi @Reamer, Thanks!
I found the checks failed at zeppelin-integration at ParagraphActionsIT#testSingleDynamicFormCheckboxForm.
I ran the zeppelin-integration test in Mac OS 10.14.1 but got different results.
In my test, testSingleDynamicFormCheckboxForm passed while three tests in InterpreterModeActionsIT failed. Some error logs are as follows. Is it caused by the operating system?

java.lang.AssertionError: The number of python process is
Expected: "1"
     but: was "0"
Expected :1
Actual   :0
<Click to see difference>


	at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20)
	at org.junit.Assert.assertThat(Assert.java:956)
	at org.junit.rules.ErrorCollector$1.call(ErrorCollector.java:65)
	at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:78)
	at org.junit.rules.ErrorCollector.checkThat(ErrorCollector.java:63)
	at org.apache.zeppelin.integration.InterpreterModeActionsIT.testPerUserIsolatedAction(InterpreterModeActionsIT.java:652)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.junit.rules.Verifier$1.evaluate(Verifier.java:35)
	at org.junit.rules.RunRules.evaluate(RunRules.java:20)
	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
	at org.junit.runners.Suite.runChild(Suite.java:128)
	at org.junit.runners.Suite.runChild(Suite.java:27)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
	at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68)
	at com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47)
	at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)
	at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)

@Arnaud-Nauwynck
Copy link

Even after applying the fix to bin/interpreter.cmd, it fails with a Classpath error

INFO [2021-01-30 20:16:10,905] ({RegisterThread} RemoteInterpreterServer.java[run]:595) - Start registration
 INFO [2021-01-30 20:16:10,905] ({RemoteInterpreterServer-Thread} RemoteInterpreterServer.java[run]:193) - Launching ThriftServer at 192.168.0.50:50936
 INFO [2021-01-30 20:16:12,014] ({RegisterThread} RemoteInterpreterServer.java[run]:609) - Registering interpreter process
 INFO [2021-01-30 20:16:12,060] ({RegisterThread} RemoteInterpreterServer.java[run]:611) - Registered interpreter process
 INFO [2021-01-30 20:16:12,060] ({RegisterThread} RemoteInterpreterServer.java[run]:632) - Registration finished
 WARN [2021-01-30 20:16:20,926] ({pool-2-thread-1} ZeppelinConfiguration.java[<init>]:85) - Failed to load XML configuration, proceeding with a default,for a stacktrace activate the debug log
 INFO [2021-01-30 20:16:20,931] ({pool-2-thread-1} ZeppelinConfiguration.java[create]:135) - Server Host: 127.0.0.1
 INFO [2021-01-30 20:16:20,932] ({pool-2-thread-1} ZeppelinConfiguration.java[create]:139) - Server Port: 8080
 INFO [2021-01-30 20:16:20,932] ({pool-2-thread-1} ZeppelinConfiguration.java[create]:141) - Context Path: /
 INFO [2021-01-30 20:16:20,932] ({pool-2-thread-1} ZeppelinConfiguration.java[create]:142) - Zeppelin Version: 0.10.0-SNAPSHOT
 INFO [2021-01-30 20:16:20,935] ({pool-2-thread-1} RemoteInterpreterServer.java[createLifecycleManager]:286) - Creating interpreter lifecycle manager: org.apache.zeppelin.interpreter.lifecycle.NullLifecycleManager
 INFO [2021-01-30 20:16:20,935] ({pool-2-thread-1} RemoteInterpreterServer.java[init]:229) - Creating RemoteInterpreterEventClient with connection pool size: 10
ERROR [2021-01-30 20:16:21,058] ({pool-2-thread-1} RemoteInterpreterServer.java[createInterpreter]:391) - org.apache.zeppelin.spark.SparkInterpreter
java.lang.ClassNotFoundException: org.apache.zeppelin.spark.SparkInterpreter
        at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:264)
        at org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer.createInterpreter(RemoteInterpreterServer.java:374)
        at org.apache.zeppelin.interpreter.thrift.RemoteInterpreterService$Processor$createInterpreter.getResult(RemoteInterpreterService.java:1603)
        at org.apache.zeppelin.interpreter.thrift.RemoteInterpreterService$Processor$createInterpreter.getResult(RemoteInterpreterService.java:1)
        at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:38)
        at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:38)
        at org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:313)
        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)

@jongyoul
Copy link
Member

It looks like we need to keep on eyes. Can someone help to review it?

@zjffdu
Copy link
Contributor

zjffdu commented Sep 24, 2021

@jongyoul We don't have CI for windows platform, so it is hard to keep quality of zeppelin on windows. If we want to support zeppelin on windows, I think we should enable CI for windows platform.

@jongyoul
Copy link
Member

Yes, as I remember, we already talked about this issue before. I also would like to prepare for Windows CI but we might not have much knowledge for it. What can we do?

@zjffdu
Copy link
Contributor

zjffdu commented Sep 24, 2021

I have no better idea, unless someone in community can help to do that

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
5 participants