From d9b5071f1c8b43d27a6d1d6ee69da826ba85a8f3 Mon Sep 17 00:00:00 2001 From: Steve Loughran Date: Thu, 3 Mar 2016 09:35:49 -0800 Subject: [PATCH] [SPARK-13599][BUILD] remove transitive groovy dependencies from Hive MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## What changes were proposed in this pull request? Modifies the dependency declarations of the all the hive artifacts, to explicitly exclude the groovy-all JAR. This stops the groovy classes *and everything else in that uber-JAR* from getting into spark-assembly JAR. ## How was this patch tested? 1. Pre-patch build was made: `mvn clean install -Pyarn,hive,hive-thriftserver` 1. spark-assembly expanded, observed to have the org.codehaus.groovy packages and JARs 1. A maven dependency tree was created `mvn dependency:tree -Pyarn,hive,hive-thriftserver -Dverbose > target/dependencies.txt` 1. This text file examined to confirm that groovy was being imported as a dependency of `org.spark-project.hive` 1. Patch applied 1. Repeated step1: clean build of project with ` -Pyarn,hive,hive-thriftserver` set 1. Examined created spark-assembly, verified no org.codehaus packages 1. Verified that the maven dependency tree no longer references groovy Note also that the size of the assembly JAR was 181628646 bytes before this patch, 166318515 after —15MB smaller. That's a good metric of things being excluded Author: Steve Loughran Closes #11449 from steveloughran/fixes/SPARK-13599-groovy-dependency. --- dev/deps/spark-deps-hadoop-2.2 | 1 - dev/deps/spark-deps-hadoop-2.3 | 1 - dev/deps/spark-deps-hadoop-2.4 | 1 - dev/deps/spark-deps-hadoop-2.6 | 1 - dev/deps/spark-deps-hadoop-2.7 | 1 - pom.xml | 21 +++++++++++++++++++++ 6 files changed, 21 insertions(+), 5 deletions(-) diff --git a/dev/deps/spark-deps-hadoop-2.2 b/dev/deps/spark-deps-hadoop-2.2 index 266e0ce88d552..53533d088c313 100644 --- a/dev/deps/spark-deps-hadoop-2.2 +++ b/dev/deps/spark-deps-hadoop-2.2 @@ -59,7 +59,6 @@ grizzly-http-2.1.2.jar grizzly-http-server-2.1.2.jar grizzly-http-servlet-2.1.2.jar grizzly-rcm-2.1.2.jar -groovy-all-2.1.6.jar guice-3.0.jar guice-servlet-3.0.jar hadoop-annotations-2.2.0.jar diff --git a/dev/deps/spark-deps-hadoop-2.3 b/dev/deps/spark-deps-hadoop-2.3 index 257751a09088f..1db9b798c341f 100644 --- a/dev/deps/spark-deps-hadoop-2.3 +++ b/dev/deps/spark-deps-hadoop-2.3 @@ -54,7 +54,6 @@ eigenbase-properties-1.1.5.jar geronimo-annotation_1.0_spec-1.1.1.jar geronimo-jaspic_1.0_spec-1.0.jar geronimo-jta_1.1_spec-1.1.1.jar -groovy-all-2.1.6.jar guice-3.0.jar guice-servlet-3.0.jar hadoop-annotations-2.3.0.jar diff --git a/dev/deps/spark-deps-hadoop-2.4 b/dev/deps/spark-deps-hadoop-2.4 index 061ef2876b55a..b190997997e90 100644 --- a/dev/deps/spark-deps-hadoop-2.4 +++ b/dev/deps/spark-deps-hadoop-2.4 @@ -54,7 +54,6 @@ eigenbase-properties-1.1.5.jar geronimo-annotation_1.0_spec-1.1.1.jar geronimo-jaspic_1.0_spec-1.0.jar geronimo-jta_1.1_spec-1.1.1.jar -groovy-all-2.1.6.jar guice-3.0.jar guice-servlet-3.0.jar hadoop-annotations-2.4.0.jar diff --git a/dev/deps/spark-deps-hadoop-2.6 b/dev/deps/spark-deps-hadoop-2.6 index f171d5aa390d2..669d6d566fcaf 100644 --- a/dev/deps/spark-deps-hadoop-2.6 +++ b/dev/deps/spark-deps-hadoop-2.6 @@ -58,7 +58,6 @@ eigenbase-properties-1.1.5.jar geronimo-annotation_1.0_spec-1.1.1.jar geronimo-jaspic_1.0_spec-1.0.jar geronimo-jta_1.1_spec-1.1.1.jar -groovy-all-2.1.6.jar gson-2.2.4.jar guice-3.0.jar guice-servlet-3.0.jar diff --git a/dev/deps/spark-deps-hadoop-2.7 b/dev/deps/spark-deps-hadoop-2.7 index a7a9dcdef0a9a..b106be711f9cc 100644 --- a/dev/deps/spark-deps-hadoop-2.7 +++ b/dev/deps/spark-deps-hadoop-2.7 @@ -58,7 +58,6 @@ eigenbase-properties-1.1.5.jar geronimo-annotation_1.0_spec-1.1.1.jar geronimo-jaspic_1.0_spec-1.0.jar geronimo-jta_1.1_spec-1.1.1.jar -groovy-all-2.1.6.jar gson-2.2.4.jar guice-3.0.jar guice-servlet-3.0.jar diff --git a/pom.xml b/pom.xml index 2148379896d35..85c0131b4e38c 100644 --- a/pom.xml +++ b/pom.xml @@ -1327,6 +1327,10 @@ commons-logging commons-logging + + org.codehaus.groovy + groovy-all + @@ -1398,6 +1402,10 @@ commons-logging commons-logging + + org.codehaus.groovy + groovy-all + @@ -1492,6 +1500,10 @@ commons-logging commons-logging + + org.codehaus.groovy + groovy-all + @@ -1537,6 +1549,10 @@ org.apache.thrift libthrift + + org.codehaus.groovy + groovy-all + @@ -1585,6 +1601,10 @@ commons-logging commons-logging + + org.codehaus.groovy + groovy-all + @@ -1809,6 +1829,7 @@ io.netty:netty and io.netty:netty-all. --> org.jboss.netty + org.codehaus.groovy true