aboutsummaryrefslogtreecommitdiff
path: root/sql/hive/pom.xml
diff options
context:
space:
mode:
authorSean Owen <sowen@cloudera.com>2014-05-12 14:17:25 -0700
committerPatrick Wendell <pwendell@gmail.com>2014-05-12 14:17:34 -0700
commite1852812ff9a8b0b9eb28990db0ad754ab80b08b (patch)
tree7586ebad349e29c363146881cb2ad1553095271f /sql/hive/pom.xml
parent14515b416e9a00cb3a77c2645984265b30b05882 (diff)
downloadspark-e1852812ff9a8b0b9eb28990db0ad754ab80b08b.tar.gz
spark-e1852812ff9a8b0b9eb28990db0ad754ab80b08b.tar.bz2
spark-e1852812ff9a8b0b9eb28990db0ad754ab80b08b.zip
SPARK-1802. Audit dependency graph when Spark is built with -Phive
This initial commit resolves the conflicts in the Hive profiles as noted in https://issues.apache.org/jira/browse/SPARK-1802 . Most of the fix was to note that Hive drags in Avro, and so if the hive module depends on Spark's version of the `avro-*` dependencies, it will pull in our exclusions as needed too. But I found we need to copy some exclusions between the two Avro dependencies to get this right. And then had to squash some commons-logging intrusions. This turned up another annoying find, that `hive-exec` is basically an "assembly" artifact that _also_ packages all of its transitive dependencies. This means the final assembly shows lots of collisions between itself and its dependencies, and even other project dependencies. I have a TODO to examine whether that is going to be a deal-breaker or not. In the meantime I'm going to tack on a second commit to this PR that will also fix some similar, last collisions in the YARN profile. Author: Sean Owen <sowen@cloudera.com> Closes #744 from srowen/SPARK-1802 and squashes the following commits: a856604 [Sean Owen] Resolve JAR version conflicts specific to Hive profile (cherry picked from commit 8586bf564fe010dfc19ef26874472a6f85e355fb) Signed-off-by: Patrick Wendell <pwendell@gmail.com>
Diffstat (limited to 'sql/hive/pom.xml')
-rw-r--r--sql/hive/pom.xml21
1 files changed, 21 insertions, 0 deletions
diff --git a/sql/hive/pom.xml b/sql/hive/pom.xml
index 1f05d0b215..4fd3cb0cae 100644
--- a/sql/hive/pom.xml
+++ b/sql/hive/pom.xml
@@ -51,6 +51,12 @@
<groupId>org.apache.hive</groupId>
<artifactId>hive-exec</artifactId>
<version>${hive.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
@@ -60,6 +66,21 @@
<groupId>org.apache.hive</groupId>
<artifactId>hive-serde</artifactId>
<version>${hive.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging-api</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <!-- hive-serde already depends on avro, but this brings in customized config of avro deps from parent -->
+ <dependency>
+ <groupId>org.apache.avro</groupId>
+ <artifactId>avro</artifactId>
</dependency>
<dependency>
<groupId>org.scalatest</groupId>