diff --git a/dev/run-tests.py b/dev/run-tests.py
index cbe347274e62..291f821c7f80 100755
--- a/dev/run-tests.py
+++ b/dev/run-tests.py
@@ -110,8 +110,8 @@ def determine_modules_to_test(changed_modules):
['graphx', 'examples']
>>> x = [x.name for x in determine_modules_to_test([modules.sql])]
>>> x # doctest: +NORMALIZE_WHITESPACE
- ['sql', 'hive', 'mllib', 'examples', 'hive-thriftserver', 'pyspark-sql', 'sparkr',
- 'pyspark-mllib', 'pyspark-ml']
+ ['sql', 'hive', 'mllib', 'examples', 'hive-thriftserver', 'hivecontext-compatibility',
+ 'pyspark-sql', 'sparkr', 'pyspark-mllib', 'pyspark-ml']
"""
modules_to_test = set()
for module in changed_modules:
diff --git a/dev/sparktestsupport/modules.py b/dev/sparktestsupport/modules.py
index c844bcff7e4f..6d47733ec194 100644
--- a/dev/sparktestsupport/modules.py
+++ b/dev/sparktestsupport/modules.py
@@ -151,6 +151,18 @@ def __hash__(self):
)
+hivecontext_compatibility = Module(
+ name="hivecontext-compatibility",
+ dependencies=[hive],
+ source_file_regexes=[
+ "sql/hivecontext-compatibility/",
+ ],
+ sbt_test_goals=[
+ "hivecontext-compatibility/test"
+ ]
+)
+
+
sketch = Module(
name="sketch",
dependencies=[],
diff --git a/pom.xml b/pom.xml
index dfee5d78347a..73334a852d39 100644
--- a/pom.xml
+++ b/pom.xml
@@ -100,6 +100,7 @@
sql/catalyst
sql/core
sql/hive
+ sql/hivecontext-compatibility
external/docker-integration-tests
assembly
external/flume
diff --git a/project/SparkBuild.scala b/project/SparkBuild.scala
index a0df9b6a331f..9e6d341ca25b 100644
--- a/project/SparkBuild.scala
+++ b/project/SparkBuild.scala
@@ -36,8 +36,8 @@ object BuildCommons {
private val buildLocation = file(".").getAbsoluteFile.getParentFile
- val sqlProjects@Seq(catalyst, sql, hive, hiveThriftServer) = Seq(
- "catalyst", "sql", "hive", "hive-thriftserver"
+ val sqlProjects@Seq(catalyst, sql, hive, hiveThriftServer, hiveCompatibility) = Seq(
+ "catalyst", "sql", "hive", "hive-thriftserver", "hivecontext-compatibility"
).map(ProjectRef(buildLocation, _))
val streamingProjects@Seq(
@@ -253,7 +253,7 @@ object SparkBuild extends PomBuild {
val mimaProjects = allProjects.filterNot { x =>
Seq(
- spark, hive, hiveThriftServer, catalyst, repl, networkCommon, networkShuffle, networkYarn,
+ spark, hive, hiveThriftServer, hiveCompatibility, catalyst, repl, networkCommon, networkShuffle, networkYarn,
unsafe, testTags, sketch, mllibLocal
).contains(x)
}
diff --git a/sql/hivecontext-compatibility/pom.xml b/sql/hivecontext-compatibility/pom.xml
new file mode 100644
index 000000000000..90c6bfdd8df4
--- /dev/null
+++ b/sql/hivecontext-compatibility/pom.xml
@@ -0,0 +1,50 @@
+
+
+
+
+ 4.0.0
+
+ org.apache.spark
+ spark-parent_2.11
+ 2.0.0-SNAPSHOT
+ ../../pom.xml
+
+
+ org.apache.spark
+ spark-hivecontext-compatibility_2.11
+ jar
+ Spark Project HiveContext Compatibility
+ http://spark.apache.org/
+
+ hivecontext-compatibility
+
+
+
+
+ org.apache.spark
+ spark-hive_${scala.binary.version}
+ ${project.version}
+
+
+
+
+ target/scala-${scala.binary.version}/classes
+ target/scala-${scala.binary.version}/test-classes
+
+