Uh oh!
There was an error while loading. Please reload this page.
[ZEPPELIN-647] - Native Windows support for startup scripts and configuration - #734
[ZEPPELIN-647] - Native Windows support for startup scripts and configuration#734granturing wants to merge 12 commits into
Conversation
| <directory>../conf</directory> | ||
| <excludes> | ||
| <exclude>interpreter.json</exclude> | ||
| <exclude>zeppelin-env.cmd</exclude> |
Leemoonsoo
commented
Feb 20, 2016
@granturing Appreciate for the patch! |
Leemoonsoo
commented
Feb 21, 2016
It works well on my windows XP with oracle jdk 1.7.0_79. great work! |
ankurmitujjain
commented
Feb 22, 2016
It works on Windows 7 as well. |
prabhjyotsingh
commented
Feb 22, 2016
I tried it on Windows 7, works well. Except for these two test failure in cassandra, when I do |
felixcheung
commented
Feb 28, 2016
@doanduyhai is cassandra supported on windows? |
doanduyhai
commented
Feb 28, 2016
Yes, Cassandra is supported on Windows. The error is about parsing multi line comments. The first test failure looks interesting. Basically it says that the following test fails: "Parser" should "parse multi-line comment" in {
valquery:String="""/*This is a comment |line1 |line2 |line3 |*/""".stripMargin
valparsed= parser.parseAll(parser.multiLineComment, query)
parsed should matchPattern {
case parser.Success(Comment("This is a comment\nline1\nline2\nline3\n"), _) =>
}
}because it does not match the regexp pattern:
I'm wondering if it is not related to the difference between Linux/Unix and Windows for the line terminator |
doanduyhai
commented
Feb 28, 2016
Let me checkout the project on Windows and try (I need to find a Windows :D) |
felixcheung
commented
Feb 28, 2016
The last CI failure is because of spark release download timeout. |
granturing
commented
Feb 28, 2016
Hi Felix, agree with the Cassandra test failure. I have a couple more things I want to verify and then we should be good to go. I'm writing up some docs related to Windows deployment that will be part of this PR. |
Leemoonsoo
commented
Mar 2, 2016
+1 for track the Windows Cassandra test failure in a new JIRA |
…y due to delayed expansion
resolved conflict in docs/install/install.md
granturing
commented
Mar 3, 2016
So, interestingly enough I only see an issue with Spark (using Hadoop 2.6). Running Flink seems fine, but it could be dependent on the Hadoop client versions being used by the two. But yes, the HDFS interpreter will need to have the necessary Windows dependencies. You want me to pull that line out? |
felixcheung
commented
Mar 4, 2016
Hmm, interesting. Let's keep this here for now then. |
granturing
commented
Mar 6, 2016
Couple questions:
privatestaticfinalbooleanisWindows = System.getProperty("os.name")
.startsWith("Windows");
privatefinalStringshell = isWindows ? "cmd /c" : "bash -c";
privatestaticfinalStringINTERPRETER_SCRIPT =
System.getProperty("os.name").startsWith("Windows") ?
"../bin/interpreter.cmd" :
"../bin/interpreter.sh"; |
granturing
commented
Mar 10, 2016
I've been running this extensively the past few weeks and have nothing left to add at this point, unless there's additional feedback. |
Leemoonsoo
commented
Mar 10, 2016
@granturing Thanks for great work. LGTM. Can #749 and #769 also be applied? |
dnldxn
commented
Mar 14, 2016
The script seems to have a problem with CLASSPATH's that contain spaces (e.g. C:\Program Files\xyz\bin). I'm not knowledgeable enough with with Windows Batch scripting to determine if this a problem with the startup script or my particular environment. The script fails in the following section of "zeppelin.cmd": The error thrown: |
granturing
commented
Mar 15, 2016
@dnldxn thanks for testing that. I changed a few things to better handle spaces. Unfortunately, using the bundled Spark with a ZEPPELIN_HOME with spaces will not work, due to Spark issues. External Spark works fine though. |
Leemoonsoo
commented
Mar 17, 2016
Is it okay to be merged? |
granturing
commented
Mar 17, 2016
I have no more changes. @dnldxn were you able to validate the latest commit on your setup? |
dnldxn
commented
Mar 18, 2016
@granturing Yep, it works great on my Windows 10 system. |
corneadoug
commented
Mar 22, 2016
@granturing Selenium tests failed, could you close/re-open this PR to launch CI again? |
granturing
commented
Mar 22, 2016
One version failed because it couldn't download Spark, the other because of connection refused errors running API tests. My last commit was only against the Windows batch files which aren't being tested in the CI build though. |
corneadoug
commented
Mar 22, 2016
Most of the profiles are green, including those with tests, so LGTM |
Leemoonsoo
commented
Mar 23, 2016
LGTM. Merge if there're no more discussions. |
…guration ### What is this PR for? This is to give Windows first-class support for running Zeppelin without the need for Cygwin or other hacks. ### What type of PR is it? Improvement ### Todos * [x] - Fix notebook dir path handling which right now assumes URI compatible string (see https://github.com/apache/incubator-zeppelin/blob/master/zeppelin-zengine/src/main/java/org/apache/zeppelin/notebook/repo/VFSNotebookRepo.java#L63) * [x] - Add documentation for configuring and running on Windows * [x] - Independent code review of the CMD scripts to ensure they're correct ### Is there a relevant Jira issue? ZEPPELIN-647 ### How should this be tested? * Pull this PR * Build * Override default ZEPPELIN_NOTEBOOK_DIR in zeppelin-env.cmd to be an absolute file URI such as file:///c:/notebook * Start with bin\zeppelin.cmd * If using any Hadoop system ensure you have winutils.exe in your HADOOP_HOME\bin, see (https://github.com/steveloughran/winutils) ### Screenshots (if appropriate) ### Questions: * Does the licenses files need update? No * Is there breaking changes for older versions? No * Does this needs documentation? Yes Author: Silvio Fiorito <silvio.fiorito@granturing.com> Author: Silvio Fiorito <Silvio Fiorito> Closesapache#734 from granturing/windows-support and squashes the following commits: 8aadd45 [Silvio Fiorito] Fixes to handle spaces in paths properly, both for ZEPPELIN_HOME and CLASSPATH 73aaf4f [Silvio Fiorito] Default to the appropriate interpreter when running on Windows db28fe9 [Silvio Fiorito] Support for running unit tests on Windows using the appropriate interpreter script a1e3097 [Silvio Fiorito] Support for Windows CMD shell interpreter 82acdcf [Silvio Fiorito] Merge branch 'master' into windows-support 9e8b309 [Silvio Fiorito] Initital doc updates for running on Windows 03baf62 [Silvio Fiorito] Additional fix for embedded pyspark environment variables 2b9f01c [Silvio Fiorito] Fix for pyspark PYTHONPATH environment variable not being set properly due to delayed expansion c700808 [Silvio Fiorito] Check for Windows path before creating URI to prevent URISyntaxExecption d30e4b9 [Silvio Fiorito] And again fix indentations missed last time 5b49d3e [Silvio Fiorito] Cleaned up indentation 9e40482 [Silvio Fiorito] Initial support for Windows platform, startup scripts
What is this PR for?
This is to give Windows first-class support for running Zeppelin without the need for Cygwin or other hacks.
What type of PR is it?
Improvement
Todos
Is there a relevant Jira issue?
ZEPPELIN-647
How should this be tested?
Screenshots (if appropriate)
Questions: