aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSandeep Singh <sandeep@techaddict.me>2016-05-11 17:44:00 -0700
committerAndrew Or <andrew@databricks.com>2016-05-11 17:44:00 -0700
commitdb573fc743d12446dd0421fb45d00c2f541eaf9a (patch)
treedbd694d63616becab4f45b8abdd0b583921cc3a5
parent603f4453a16825cc5773cfe24d6ae4cee5ec949a (diff)
downloadspark-db573fc743d12446dd0421fb45d00c2f541eaf9a.tar.gz
spark-db573fc743d12446dd0421fb45d00c2f541eaf9a.tar.bz2
spark-db573fc743d12446dd0421fb45d00c2f541eaf9a.zip
[SPARK-15072][SQL][PYSPARK] FollowUp: Remove SparkSession.withHiveSupport in PySpark
## What changes were proposed in this pull request? This is a followup of https://github.com/apache/spark/pull/12851 Remove `SparkSession.withHiveSupport` in PySpark and instead use `SparkSession.builder. enableHiveSupport` ## How was this patch tested? Existing tests. Author: Sandeep Singh <sandeep@techaddict.me> Closes #13063 from techaddict/SPARK-15072-followup.
-rw-r--r--dev/audit-release/sbt_app_hive/src/main/scala/HiveApp.scala8
-rw-r--r--python/pyspark/shell.py4
-rw-r--r--python/pyspark/sql/session.py10
-rw-r--r--sql/hivecontext-compatibility/src/main/scala/org/apache/spark/sql/hive/HiveContext.scala2
4 files changed, 9 insertions, 15 deletions
diff --git a/dev/audit-release/sbt_app_hive/src/main/scala/HiveApp.scala b/dev/audit-release/sbt_app_hive/src/main/scala/HiveApp.scala
index f69d46cd17..8cbfb9cd41 100644
--- a/dev/audit-release/sbt_app_hive/src/main/scala/HiveApp.scala
+++ b/dev/audit-release/sbt_app_hive/src/main/scala/HiveApp.scala
@@ -33,7 +33,9 @@ object SparkSqlExample {
case None => new SparkConf().setAppName("Simple Sql App")
}
val sc = new SparkContext(conf)
- val sparkSession = SparkSession.withHiveSupport(sc)
+ val sparkSession = SparkSession.builder
+ .enableHiveSupport()
+ .getOrCreate()
import sparkSession._
sql("DROP TABLE IF EXISTS src")
@@ -41,14 +43,14 @@ object SparkSqlExample {
sql("LOAD DATA LOCAL INPATH 'data.txt' INTO TABLE src")
val results = sql("FROM src SELECT key, value WHERE key >= 0 AND KEY < 5").collect()
results.foreach(println)
-
+
def test(f: => Boolean, failureMsg: String) = {
if (!f) {
println(failureMsg)
System.exit(-1)
}
}
-
+
test(results.size == 5, "Unexpected number of selected elements: " + results)
println("Test succeeded")
sc.stop()
diff --git a/python/pyspark/shell.py b/python/pyspark/shell.py
index c6b0eda996..adaa3b5a79 100644
--- a/python/pyspark/shell.py
+++ b/python/pyspark/shell.py
@@ -41,7 +41,9 @@ atexit.register(lambda: sc.stop())
try:
# Try to access HiveConf, it will raise exception if Hive is not added
sc._jvm.org.apache.hadoop.hive.conf.HiveConf()
- spark = SparkSession.withHiveSupport(sc)
+ spark = SparkSession.builder\
+ .enableHiveSupport()\
+ .getOrCreate()
except py4j.protocol.Py4JError:
spark = SparkSession(sc)
except TypeError:
diff --git a/python/pyspark/sql/session.py b/python/pyspark/sql/session.py
index 04842f6185..4ee9ab8ab2 100644
--- a/python/pyspark/sql/session.py
+++ b/python/pyspark/sql/session.py
@@ -182,16 +182,6 @@ class SparkSession(object):
if SparkSession._instantiatedContext is None:
SparkSession._instantiatedContext = self
- @classmethod
- @since(2.0)
- def withHiveSupport(cls, sparkContext):
- """Returns a new SparkSession with a catalog backed by Hive.
-
- :param sparkContext: The underlying :class:`SparkContext`.
- """
- jsparkSession = sparkContext._jvm.SparkSession.withHiveSupport(sparkContext._jsc.sc())
- return cls(sparkContext, jsparkSession)
-
@since(2.0)
def newSession(self):
"""
diff --git a/sql/hivecontext-compatibility/src/main/scala/org/apache/spark/sql/hive/HiveContext.scala b/sql/hivecontext-compatibility/src/main/scala/org/apache/spark/sql/hive/HiveContext.scala
index aa0485a891..75166f6bea 100644
--- a/sql/hivecontext-compatibility/src/main/scala/org/apache/spark/sql/hive/HiveContext.scala
+++ b/sql/hivecontext-compatibility/src/main/scala/org/apache/spark/sql/hive/HiveContext.scala
@@ -27,7 +27,7 @@ import org.apache.spark.sql.{SparkSession, SQLContext}
* An instance of the Spark SQL execution engine that integrates with data stored in Hive.
* Configuration for Hive is read from hive-site.xml on the classpath.
*/
-@deprecated("Use SparkSession.withHiveSupport instead", "2.0.0")
+@deprecated("Use SparkSession.builder.enableHiveSupport instead", "2.0.0")
class HiveContext private[hive](
_sparkSession: SparkSession,
isRootContext: Boolean)