You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by xu...@apache.org on 2014/11/21 15:06:09 UTC
svn commit: r1640916 - in
/hive/branches/spark/ql/src/java/org/apache/hadoop/hive/ql/exec/spark:
HiveSparkClientFactory.java session/SparkSession.java
session/SparkSessionImpl.java
Author: xuefu
Date: Fri Nov 21 14:06:08 2014
New Revision: 1640916
URL: http://svn.apache.org/r1640916
Log:
HIVE-8868: SparkSession and SparkClient mapping[Spark Branch] (Rui via Xuefu)
Modified:
hive/branches/spark/ql/src/java/org/apache/hadoop/hive/ql/exec/spark/HiveSparkClientFactory.java
hive/branches/spark/ql/src/java/org/apache/hadoop/hive/ql/exec/spark/session/SparkSession.java
hive/branches/spark/ql/src/java/org/apache/hadoop/hive/ql/exec/spark/session/SparkSessionImpl.java
Modified: hive/branches/spark/ql/src/java/org/apache/hadoop/hive/ql/exec/spark/HiveSparkClientFactory.java
URL: http://svn.apache.org/viewvc/hive/branches/spark/ql/src/java/org/apache/hadoop/hive/ql/exec/spark/HiveSparkClientFactory.java?rev=1640916&r1=1640915&r2=1640916&view=diff
==============================================================================
--- hive/branches/spark/ql/src/java/org/apache/hadoop/hive/ql/exec/spark/HiveSparkClientFactory.java (original)
+++ hive/branches/spark/ql/src/java/org/apache/hadoop/hive/ql/exec/spark/HiveSparkClientFactory.java Fri Nov 21 14:06:08 2014
@@ -15,6 +15,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+
package org.apache.hadoop.hive.ql.exec.spark;
import org.apache.commons.compress.utils.CharsetNames;
Modified: hive/branches/spark/ql/src/java/org/apache/hadoop/hive/ql/exec/spark/session/SparkSession.java
URL: http://svn.apache.org/viewvc/hive/branches/spark/ql/src/java/org/apache/hadoop/hive/ql/exec/spark/session/SparkSession.java?rev=1640916&r1=1640915&r2=1640916&view=diff
==============================================================================
--- hive/branches/spark/ql/src/java/org/apache/hadoop/hive/ql/exec/spark/session/SparkSession.java (original)
+++ hive/branches/spark/ql/src/java/org/apache/hadoop/hive/ql/exec/spark/session/SparkSession.java Fri Nov 21 14:06:08 2014
@@ -20,13 +20,14 @@ package org.apache.hadoop.hive.ql.exec.s
import org.apache.hadoop.hive.conf.HiveConf;
import org.apache.hadoop.hive.ql.DriverContext;
import org.apache.hadoop.hive.ql.exec.spark.status.SparkJobRef;
+import org.apache.hadoop.hive.ql.metadata.HiveException;
import org.apache.hadoop.hive.ql.plan.SparkWork;
public interface SparkSession {
/**
* Initializes a Spark session for DAG execution.
*/
- public void open(HiveConf conf);
+ public void open(HiveConf conf) throws HiveException;
/**
* Submit given <i>sparkWork</i> to SparkClient
Modified: hive/branches/spark/ql/src/java/org/apache/hadoop/hive/ql/exec/spark/session/SparkSessionImpl.java
URL: http://svn.apache.org/viewvc/hive/branches/spark/ql/src/java/org/apache/hadoop/hive/ql/exec/spark/session/SparkSessionImpl.java?rev=1640916&r1=1640915&r2=1640916&view=diff
==============================================================================
--- hive/branches/spark/ql/src/java/org/apache/hadoop/hive/ql/exec/spark/session/SparkSessionImpl.java (original)
+++ hive/branches/spark/ql/src/java/org/apache/hadoop/hive/ql/exec/spark/session/SparkSessionImpl.java Fri Nov 21 14:06:08 2014
@@ -26,15 +26,13 @@ import org.apache.hadoop.hive.ql.DriverC
import org.apache.hadoop.hive.ql.exec.spark.HiveSparkClientFactory;
import org.apache.hadoop.hive.ql.exec.spark.HiveSparkClient;
import org.apache.hadoop.hive.ql.exec.spark.status.SparkJobRef;
+import org.apache.hadoop.hive.ql.metadata.HiveException;
import org.apache.hadoop.hive.ql.plan.SparkWork;
+import org.apache.spark.SparkException;
import java.io.IOException;
import java.util.UUID;
-/**
- * Simple implementation of <i>SparkSession</i> which currently just submits jobs to
- * SparkClient which is shared by all SparkSession instances.
- */
public class SparkSessionImpl implements SparkSession {
private static final Log LOG = LogFactory.getLog(SparkSession.class);
@@ -48,16 +46,19 @@ public class SparkSessionImpl implements
}
@Override
- public void open(HiveConf conf) {
+ public void open(HiveConf conf) throws HiveException {
this.conf = conf;
isOpen = true;
+ try {
+ hiveSparkClient = HiveSparkClientFactory.createHiveSparkClient(conf);
+ } catch (Exception e) {
+ throw new HiveException("Failed to create spark client.", e);
+ }
}
@Override
public SparkJobRef submit(DriverContext driverContext, SparkWork sparkWork) throws Exception {
Preconditions.checkState(isOpen, "Session is not open. Can't submit jobs.");
- Configuration hiveConf = driverContext.getCtx().getConf();
- hiveSparkClient = HiveSparkClientFactory.createHiveSparkClient(hiveConf);
return hiveSparkClient.execute(driverContext, sparkWork);
}