You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@zeppelin.apache.org by mo...@apache.org on 2015/05/23 07:39:19 UTC
incubator-zeppelin git commit: Spark 1.4 support
Repository: incubator-zeppelin
Updated Branches:
refs/heads/master a911b0ec4 -> 928d09987
Spark 1.4 support
This PR enables Zeppelin work with upcoming Spark 1.4
to test, install spark 1.4 maven artifacts into your local .m2 repository by doing
```
sbt/sbt publish-local
```
in spark-1.4 source code, and then build Zeppelin
```
mvn clean package -Pspark-1.4 -Dspark.version=1.4.0 -DskipTests
```
I have a simple screenshot
![image](https://cloud.githubusercontent.com/assets/1540981/7719041/879fb87c-fef5-11e4-836e-10a349e26232.png)
Author: Lee moon soo <mo...@apache.org>
Closes #76 from Leemoonsoo/spark-1.4 and squashes the following commits:
77cb7b9 [Lee moon soo] Spark 1.4 support
Project: http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/commit/928d0998
Tree: http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/tree/928d0998
Diff: http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/diff/928d0998
Branch: refs/heads/master
Commit: 928d09987b0b59676d82bbfe336d1688ef01d9bc
Parents: a911b0e
Author: Lee moon soo <mo...@apache.org>
Authored: Wed May 20 13:34:27 2015 +0900
Committer: Lee moon soo <mo...@apache.org>
Committed: Sat May 23 14:39:11 2015 +0900
----------------------------------------------------------------------
README.md | 4 ++
pom.xml | 60 +++++++++++++++++++-
spark/pom.xml | 1 -
.../zeppelin/spark/PySparkInterpreter.java | 5 +-
.../apache/zeppelin/spark/SparkInterpreter.java | 10 ++++
.../zeppelin/spark/SparkSqlInterpreter.java | 2 +
6 files changed, 77 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/blob/928d0998/README.md
----------------------------------------------------------------------
diff --git a/README.md b/README.md
index 46e188c..44f50ee 100644
--- a/README.md
+++ b/README.md
@@ -54,6 +54,10 @@ Spark 1.3.x
```
mvn clean package -Pspark-1.3 -Dhadoop.version=2.2.0 -Phadoop-2.2 -DskipTests
```
+Spark 1.4.x
+```
+mvn clean package -Pspark-1.4 -Dhadoop.version=2.2.0 -Phadoop-2.2 -DskipTests
+```
CDH 5.X
```
mvn clean package -Pspark-1.2 -Dhadoop.version=2.5.0-cdh5.3.0 -Phadoop-2.4 -DskipTests
http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/blob/928d0998/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index b4f78df..e43ccab 100644
--- a/pom.xml
+++ b/pom.xml
@@ -126,6 +126,7 @@
<jets3t.version>0.7.1</jets3t.version>
<commons.math3.version>3.2</commons.math3.version>
<commons.httpclient.version>4.3.6</commons.httpclient.version>
+ <fasterxml.jackson.version>2.4.4</fasterxml.jackson.version>
<codehaus.jackson.version>1.8.8</codehaus.jackson.version>
<snappy.version>1.0.5</snappy.version>
<io.netty.version>4.0.17.Final</io.netty.version>
@@ -812,6 +813,26 @@
</dependency>
<dependency>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-databind</artifactId>
+ <version>${fasterxml.jackson.version}</version>
+ </dependency>
+
+ <!-- Guava is excluded because of SPARK-6149. The Guava version referenced in this module is
+ 15.0, which causes runtime incompatibility issues. -->
+ <dependency>
+ <groupId>com.fasterxml.jackson.module</groupId>
+ <artifactId>jackson-module-scala_2.10</artifactId>
+ <version>${fasterxml.jackson.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
<groupId>com.thoughtworks.paranamer</groupId>
<artifactId>paranamer</artifactId>
<version>2.6</version>
@@ -1317,8 +1338,6 @@
<profile>
<id>spark-1.3</id>
- <dependencies>
- </dependencies>
<properties>
<akka.version>2.3.4-spark</akka.version>
<spark.version>1.3.0</spark.version>
@@ -1343,9 +1362,46 @@
<snappy.version>1.1.1.6</snappy.version>
<mesos.version>0.21.0</mesos.version>
</properties>
+
+ <dependencies>
+ </dependencies>
+
</profile>
<profile>
+ <id>spark-1.4</id>
+ <properties>
+ <akka.version>2.3.4-spark</akka.version>
+ <spark.version>1.4.0</spark.version>
+ <mesos.version>0.21.1</mesos.version>
+ <hbase.version>0.98.7-hadoop2</hbase.version>
+ <hbase.artifact>hbase</hbase.artifact>
+ <hive.group>org.spark-project.hive</hive.group>
+ <hive.version>0.13.1a</hive.version>
+ <derby.version>10.10.1.1</derby.version>
+ <orbit.version>3.0.0.v201112011016</orbit.version>
+ <parquet.version>1.6.0rc3</parquet.version>
+ <chill.version>0.5.0</chill.version>
+ <ivy.version>2.4.0</ivy.version>
+ <oro.version>2.0.8</oro.version>
+ <avro.mapred.classifier>hadoop2</avro.mapred.classifier>
+ <codahale.metrics.version>3.1.0</codahale.metrics.version>
+ <commons.httpclient.version>4.3.2</commons.httpclient.version>
+ <commons.math3.version>3.4.1</commons.math3.version>
+ <io.netty.version>4.0.23.Final</io.netty.version>
+ <codehaus.jackson.version>1.9.13</codehaus.jackson.version>
+ <fasterxml.jackson.version>2.4.4</fasterxml.jackson.version>
+ <snappy.version>1.1.1.7</snappy.version>
+ <mesos.version>0.21.0</mesos.version>
+ </properties>
+
+ <dependencies>
+ </dependencies>
+
+ </profile>
+
+
+ <profile>
<id>hadoop-0.23</id>
<!-- SPARK-1121: Adds an explicit dependency on Avro to work around a
Hadoop 0.23.X issue -->
http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/blob/928d0998/spark/pom.xml
----------------------------------------------------------------------
diff --git a/spark/pom.xml b/spark/pom.xml
index 72f216d..b4c05e5 100644
--- a/spark/pom.xml
+++ b/spark/pom.xml
@@ -76,7 +76,6 @@
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
- <version>2.3.0</version>
</dependency>
<dependency>
http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/blob/928d0998/spark/src/main/java/org/apache/zeppelin/spark/PySparkInterpreter.java
----------------------------------------------------------------------
diff --git a/spark/src/main/java/org/apache/zeppelin/spark/PySparkInterpreter.java b/spark/src/main/java/org/apache/zeppelin/spark/PySparkInterpreter.java
index 9fce093..95eefd8 100644
--- a/spark/src/main/java/org/apache/zeppelin/spark/PySparkInterpreter.java
+++ b/spark/src/main/java/org/apache/zeppelin/spark/PySparkInterpreter.java
@@ -48,9 +48,9 @@ import org.apache.zeppelin.interpreter.InterpreterException;
import org.apache.zeppelin.interpreter.InterpreterGroup;
import org.apache.zeppelin.interpreter.InterpreterPropertyBuilder;
import org.apache.zeppelin.interpreter.InterpreterResult;
+import org.apache.zeppelin.interpreter.InterpreterResult.Code;
import org.apache.zeppelin.interpreter.LazyOpenInterpreter;
import org.apache.zeppelin.interpreter.WrappedInterpreter;
-import org.apache.zeppelin.interpreter.InterpreterResult.Code;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -298,7 +298,8 @@ public class PySparkInterpreter extends Interpreter implements ExecuteResultHand
SparkInterpreter sparkInterpreter = getSparkInterpreter();
if (!sparkInterpreter.getSparkContext().version().startsWith("1.2") &&
- !sparkInterpreter.getSparkContext().version().startsWith("1.3")) {
+ !sparkInterpreter.getSparkContext().version().startsWith("1.3") &&
+ !sparkInterpreter.getSparkContext().version().startsWith("1.4")) {
return new InterpreterResult(Code.ERROR, "pyspark "
+ sparkInterpreter.getSparkContext().version() + " is not supported");
}
http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/blob/928d0998/spark/src/main/java/org/apache/zeppelin/spark/SparkInterpreter.java
----------------------------------------------------------------------
diff --git a/spark/src/main/java/org/apache/zeppelin/spark/SparkInterpreter.java b/spark/src/main/java/org/apache/zeppelin/spark/SparkInterpreter.java
index c875e85..731068e 100644
--- a/spark/src/main/java/org/apache/zeppelin/spark/SparkInterpreter.java
+++ b/spark/src/main/java/org/apache/zeppelin/spark/SparkInterpreter.java
@@ -415,6 +415,10 @@ public class SparkInterpreter extends Interpreter {
Method loadFiles = this.interpreter.getClass().getMethod(
"org$apache$spark$repl$SparkILoop$$loadFiles", Settings.class);
loadFiles.invoke(this.interpreter, settings);
+ } else if (sc.version().startsWith("1.4")) {
+ Method loadFiles = this.interpreter.getClass().getMethod(
+ "org$apache$spark$repl$SparkILoop$$loadFiles", Settings.class);
+ loadFiles.invoke(this.interpreter, settings);
}
} catch (NoSuchMethodException | SecurityException | IllegalAccessException
| IllegalArgumentException | InvocationTargetException e) {
@@ -447,6 +451,10 @@ public class SparkInterpreter extends Interpreter {
intp.interpret("import sqlContext.implicits._");
intp.interpret("import sqlContext.sql");
intp.interpret("import org.apache.spark.sql.functions._");
+ } else if (sc.version().startsWith("1.4")) {
+ intp.interpret("import sqlContext.implicits._");
+ intp.interpret("import sqlContext.sql");
+ intp.interpret("import org.apache.spark.sql.functions._");
}
// add jar
@@ -621,6 +629,8 @@ public class SparkInterpreter extends Interpreter {
progressInfo = getProgressFromStage_1_1x(sparkListener, job.finalStage());
} else if (sc.version().startsWith("1.3")) {
progressInfo = getProgressFromStage_1_1x(sparkListener, job.finalStage());
+ } else if (sc.version().startsWith("1.4")) {
+ progressInfo = getProgressFromStage_1_1x(sparkListener, job.finalStage());
} else {
continue;
}
http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/blob/928d0998/spark/src/main/java/org/apache/zeppelin/spark/SparkSqlInterpreter.java
----------------------------------------------------------------------
diff --git a/spark/src/main/java/org/apache/zeppelin/spark/SparkSqlInterpreter.java b/spark/src/main/java/org/apache/zeppelin/spark/SparkSqlInterpreter.java
index 618579d..3138fbc 100644
--- a/spark/src/main/java/org/apache/zeppelin/spark/SparkSqlInterpreter.java
+++ b/spark/src/main/java/org/apache/zeppelin/spark/SparkSqlInterpreter.java
@@ -171,6 +171,8 @@ public class SparkSqlInterpreter extends Interpreter {
progressInfo = getProgressFromStage_1_1x(sparkListener, job.finalStage());
} else if (sc.version().startsWith("1.3")) {
progressInfo = getProgressFromStage_1_1x(sparkListener, job.finalStage());
+ } else if (sc.version().startsWith("1.4")) {
+ progressInfo = getProgressFromStage_1_1x(sparkListener, job.finalStage());
} else {
logger.warn("Spark {} getting progress information not supported" + sc.version());
continue;