From 53f58b6e519dc8b7fdb36241a6854a7b2789a7c7 Mon Sep 17 00:00:00 2001 From: Chao Sun Date: Tue, 28 Sep 2021 18:23:30 +0800 Subject: [PATCH] [SPARK-36873][BUILD][TEST-MAVEN] Add provided Guava dependency for network-yarn module ### What changes were proposed in this pull request? Add provided Guava dependency to `network-yarn` module. ### Why are the changes needed? In Spark 3.1 and earlier the `network-yarn` module implicitly relies on Guava from `hadoop-client` dependency. This was changed by SPARK-33212 where we moved to shaded Hadoop client which no longer expose the transitive Guava dependency. It stayed fine for a while since we were not using `createDependencyReducedPom` so it picks up the transitive dependency from `spark-network-common` instead. However, things start to break after SPARK-36835 where we restored `createDependencyReducedPom` and now it is no longer able to locate Guava classes: ``` build/mvn test -pl common/network-yarn -Phadoop-3.2 -Phive-thriftserver -Pkinesis-asl -Pkubernetes -Pmesos -Pnetlib-lgpl -Pscala-2.12 -Pspark-ganglia-lgpl -Pyarn ... [INFO] Compiling 1 Java source to /Users/sunchao/git/spark/common/network-yarn/target/scala-2.12/classes ... [WARNING] [Warn] : bootstrap class path not set in conjunction with -source 8 [ERROR] [Error] /Users/sunchao/git/spark/common/network-yarn/src/main/java/org/apache/spark/network/yarn/YarnShuffleService.java:32: package com.google.common.annotations does not exist [ERROR] [Error] /Users/sunchao/git/spark/common/network-yarn/src/main/java/org/apache/spark/network/yarn/YarnShuffleService.java:33: package com.google.common.base does not exist [ERROR] [Error] /Users/sunchao/git/spark/common/network-yarn/src/main/java/org/apache/spark/network/yarn/YarnShuffleService.java:34: package com.google.common.collect does not exist [ERROR] [Error] /Users/sunchao/git/spark/common/network-yarn/src/main/java/org/apache/spark/network/yarn/YarnShuffleService.java:118: cannot find symbol symbol: class VisibleForTesting location: class org.apache.spark.network.yarn.YarnShuffleService ``` ### Does this PR introduce _any_ user-facing change? No ### How was this patch tested? Tested with the above `mvn` command and it's now passing. Closes #34125 from sunchao/SPARK-36873. Authored-by: Chao Sun Signed-off-by: Gengliang Wang --- common/network-yarn/pom.xml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/common/network-yarn/pom.xml b/common/network-yarn/pom.xml index 32bf1be226..1f43c903a5 100644 --- a/common/network-yarn/pom.xml +++ b/common/network-yarn/pom.xml @@ -73,6 +73,11 @@ ${hadoop-client-runtime.artifact} ${hadoop.version} + + com.google.guava + guava + provided + org.slf4j slf4j-api