Skip to content
Closed
Show file tree
Hide file tree
Changes from 12 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 15 additions & 14 deletions dev/deps/spark-deps-hadoop-3-hive-2.3
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ audience-annotations/0.5.0//audience-annotations-0.5.0.jar
avro-ipc/1.11.1//avro-ipc-1.11.1.jar
avro-mapred/1.11.1//avro-mapred-1.11.1.jar
avro/1.11.1//avro-1.11.1.jar
aws-java-sdk-bundle/1.12.262//aws-java-sdk-bundle-1.12.262.jar
aws-java-sdk-bundle/1.12.316//aws-java-sdk-bundle-1.12.316.jar
azure-data-lake-store-sdk/2.3.9//azure-data-lake-store-sdk-2.3.9.jar
azure-keyvault-core/1.0.0//azure-keyvault-core-1.0.0.jar
azure-storage/7.0.1//azure-storage-7.0.1.jar
Expand All @@ -51,6 +51,7 @@ commons-math3/3.6.1//commons-math3-3.6.1.jar
commons-pool/1.5.4//commons-pool-1.5.4.jar
commons-text/1.10.0//commons-text-1.10.0.jar
compress-lzf/1.1.2//compress-lzf-1.1.2.jar
cos_api-bundle/5.6.69//cos_api-bundle-5.6.69.jar

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

BTW, is this introduced back?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes, but its the version with the updated suffix list. apache/hadoop#4444

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's a little magical, apache/hadoop#4444 is a version upgrade. I think it should be easier to understand when similar

cos_api-bundle/5.6.19//cos_api-bundle-5.6.19.jar  -> cos_api-bundle/5.6.69//cos_api-bundle-5.6.69.jar

changes occur, but when using Hadoop 3.3.4, this dependency does not appear in spark-deps-hadoop-3-hive-2.3

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this caused by #39124 (comment)?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it was removed in Hadoop 3.3.4 (via https://issues.apache.org/jira/browse/HADOOP-18307) but added back in Hadoop 3.3.5

curator-client/2.13.0//curator-client-2.13.0.jar
curator-framework/2.13.0//curator-framework-2.13.0.jar
curator-recipes/2.13.0//curator-recipes-2.13.0.jar
Expand All @@ -64,17 +65,18 @@ gcs-connector/hadoop3-2.2.7/shaded/gcs-connector-hadoop3-2.2.7-shaded.jar
gmetric4j/1.0.10//gmetric4j-1.0.10.jar
gson/2.2.4//gson-2.2.4.jar
guava/14.0.1//guava-14.0.1.jar
hadoop-aliyun/3.3.4//hadoop-aliyun-3.3.4.jar
hadoop-annotations/3.3.4//hadoop-annotations-3.3.4.jar
hadoop-aws/3.3.4//hadoop-aws-3.3.4.jar
hadoop-azure-datalake/3.3.4//hadoop-azure-datalake-3.3.4.jar
hadoop-azure/3.3.4//hadoop-azure-3.3.4.jar
hadoop-client-api/3.3.4//hadoop-client-api-3.3.4.jar
hadoop-client-runtime/3.3.4//hadoop-client-runtime-3.3.4.jar
hadoop-cloud-storage/3.3.4//hadoop-cloud-storage-3.3.4.jar
hadoop-openstack/3.3.4//hadoop-openstack-3.3.4.jar
hadoop-aliyun/3.3.5//hadoop-aliyun-3.3.5.jar
hadoop-annotations/3.3.5//hadoop-annotations-3.3.5.jar
hadoop-aws/3.3.5//hadoop-aws-3.3.5.jar
hadoop-azure-datalake/3.3.5//hadoop-azure-datalake-3.3.5.jar
hadoop-azure/3.3.5//hadoop-azure-3.3.5.jar
hadoop-client-api/3.3.5//hadoop-client-api-3.3.5.jar
hadoop-client-runtime/3.3.5//hadoop-client-runtime-3.3.5.jar
hadoop-cloud-storage/3.3.5//hadoop-cloud-storage-3.3.5.jar
hadoop-cos/3.3.5//hadoop-cos-3.3.5.jar

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ditto. Is this added back?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

mmm. provided it doesn't interfere with everyone else, then getting it means spark will work out the box with that storage.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm just worry about HADOOP-18307 Remove hadoop-cos as a dependency of hadoop-cloud-storage situation.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@dongjoon-hyun Do we need to more additional check for this dependency?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm just curious whether similar issue as described in https://issues.apache.org/jira/browse/HADOOP-18159 could happen again if we include hadoop-cos and cos_api-bundle in Spark's class path. We actually just ran into this exact issue recently :)

It'd be nice if there is an easy way to make this optional.

hadoop-openstack/3.3.5//hadoop-openstack-3.3.5.jar
hadoop-shaded-guava/1.1.1//hadoop-shaded-guava-1.1.1.jar
hadoop-yarn-server-web-proxy/3.3.4//hadoop-yarn-server-web-proxy-3.3.4.jar
hadoop-yarn-server-web-proxy/3.3.5//hadoop-yarn-server-web-proxy-3.3.5.jar
hive-beeline/2.3.9//hive-beeline-2.3.9.jar
hive-cli/2.3.9//hive-cli-2.3.9.jar
hive-common/2.3.9//hive-common-2.3.9.jar
Expand Down Expand Up @@ -116,7 +118,6 @@ janino/3.1.9//janino-3.1.9.jar
javassist/3.25.0-GA//javassist-3.25.0-GA.jar
javax.jdo/3.2.0-m3//javax.jdo-3.2.0-m3.jar
javolution/5.5.1//javolution-5.5.1.jar
jaxb-api/2.2.11//jaxb-api-2.2.11.jar

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we need to manually add back this dependency? It disappeared from hadoop-aliyun's dependency chain:

3.3.4

[INFO] +- org.apache.hadoop:hadoop-cloud-storage:jar:3.3.4:compile
[INFO] |  +- org.apache.hadoop:hadoop-aliyun:jar:3.3.4:compile
[INFO] |  |  \- com.aliyun.oss:aliyun-sdk-oss:jar:3.13.0:compile
[INFO] |  |     +- org.jdom:jdom2:jar:2.0.6:compile
[INFO] |  |     +- org.codehaus.jettison:jettison:jar:1.1:compile
[INFO] |  |     |  \- stax:stax-api:jar:1.0.1:compile
[INFO] |  |     +- com.aliyun:aliyun-java-sdk-core:jar:4.5.10:compile
[INFO] |  |     |  +- javax.xml.bind:jaxb-api:jar:2.2.11:compile
[INFO] |  |     |  +- org.ini4j:ini4j:jar:0.5.4:compile
[INFO] |  |     |  +- io.opentracing:opentracing-api:jar:0.33.0:compile
[INFO] |  |     |  \- io.opentracing:opentracing-util:jar:0.33.0:compile
[INFO] |  |     |     \- io.opentracing:opentracing-noop:jar:0.33.0:compile
[INFO] |  |     +- com.aliyun:aliyun-java-sdk-ram:jar:3.1.0:compile
[INFO] |  |     \- com.aliyun:aliyun-java-sdk-kms:jar:2.11.0:compile
[INFO] |  \- org.apache.hadoop:hadoop-azure-datalake:jar:3.3.4:compile
[INFO] |     \- com.microsoft.azure:azure-data-lake-store-sdk:jar:2.3.9:compile

3.3.5

INFO] +- org.apache.hadoop:hadoop-cloud-storage:jar:3.3.5:compile
[INFO] |  +- org.apache.hadoop:hadoop-annotations:jar:3.3.5:compile
[INFO] |  +- org.apache.hadoop:hadoop-aliyun:jar:3.3.5:compile
[INFO] |  |  +- com.aliyun.oss:aliyun-sdk-oss:jar:3.13.0:compile
[INFO] |  |  |  +- org.jdom:jdom2:jar:2.0.6:compile
[INFO] |  |  |  +- com.aliyun:aliyun-java-sdk-core:jar:4.5.10:compile
[INFO] |  |  |  |  +- org.ini4j:ini4j:jar:0.5.4:compile
[INFO] |  |  |  |  +- io.opentracing:opentracing-api:jar:0.33.0:compile
[INFO] |  |  |  |  \- io.opentracing:opentracing-util:jar:0.33.0:compile
[INFO] |  |  |  |     \- io.opentracing:opentracing-noop:jar:0.33.0:compile
[INFO] |  |  |  +- com.aliyun:aliyun-java-sdk-ram:jar:3.1.0:compile
[INFO] |  |  |  \- com.aliyun:aliyun-java-sdk-kms:jar:2.11.0:compile
[INFO] |  |  \- org.codehaus.jettison:jettison:jar:1.5.3:compile
[INFO] |  \- org.apache.hadoop:hadoop-azure-datalake:jar:3.3.5:compile
[INFO] |     \- com.microsoft.azure:azure-data-lake-store-sdk:jar:2.3.9:compile

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

apache/hadoop@72f8c2a

exclude jaxb-api from aliyun-sdk-oss

jaxb-runtime/2.3.2//jaxb-runtime-2.3.2.jar
jcl-over-slf4j/2.0.6//jcl-over-slf4j-2.0.6.jar
jdo-api/3.0.1//jdo-api-3.0.1.jar
Expand All @@ -127,7 +128,7 @@ jersey-container-servlet-core/2.36//jersey-container-servlet-core-2.36.jar
jersey-container-servlet/2.36//jersey-container-servlet-2.36.jar
jersey-hk2/2.36//jersey-hk2-2.36.jar
jersey-server/2.36//jersey-server-2.36.jar
jettison/1.1//jettison-1.1.jar
jettison/1.5.3//jettison-1.5.3.jar
jetty-util-ajax/9.4.51.v20230217//jetty-util-ajax-9.4.51.v20230217.jar
jetty-util/9.4.51.v20230217//jetty-util-9.4.51.v20230217.jar
jline/2.14.6//jline-2.14.6.jar
Expand Down Expand Up @@ -249,7 +250,7 @@ threeten-extra/1.7.1//threeten-extra-1.7.1.jar
tink/1.7.0//tink-1.7.0.jar
transaction-api/1.1//transaction-api-1.1.jar
univocity-parsers/2.9.1//univocity-parsers-2.9.1.jar
wildfly-openssl/1.0.7.Final//wildfly-openssl-1.0.7.Final.jar
wildfly-openssl/1.1.3.Final//wildfly-openssl-1.1.3.Final.jar
xbean-asm9-shaded/4.22//xbean-asm9-shaded-4.22.jar
xz/1.9//xz-1.9.jar
zjsonpatch/0.3.0//zjsonpatch-0.3.0.jar
Expand Down
13 changes: 12 additions & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@
<slf4j.version>2.0.6</slf4j.version>
<log4j.version>2.20.0</log4j.version>
<!-- make sure to update IsolatedClientLoader whenever this version is changed -->
<hadoop.version>3.3.4</hadoop.version>
<hadoop.version>3.3.5</hadoop.version>
<!-- Protobuf version for building with Hadoop/Yarn dependencies -->
<protobuf.hadoopDependency.version>2.5.0</protobuf.hadoopDependency.version>
<!-- Actual Protobuf version in Spark modules like Spark Connect, protobuf connector, etc. -->
Expand Down Expand Up @@ -324,6 +324,17 @@
</extraJavaTestArgs>
</properties>
<repositories>
<repository>
<id>asf-staging</id>
<name>ASF</name>
<url>https://repository.apache.org/content/groups/staging/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
<repository>
<id>gcs-maven-central-mirror</id>
<!--
Expand Down
1 change: 1 addition & 0 deletions project/SparkBuild.scala
Original file line number Diff line number Diff line change
Expand Up @@ -303,6 +303,7 @@ object SparkBuild extends PomBuild {
resolvers := Seq(
// Google Mirror of Maven Central, placed first so that it's used instead of flaky Maven Central.
// See https://storage-download.googleapis.com/maven-central/index.html for more info.
"asf-staging" at "https://repository.apache.org/content/groups/staging/",
"gcs-maven-central-mirror" at "https://maven-central.storage-download.googleapis.com/maven2/",
DefaultMavenRepository,
Resolver.mavenLocal,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -192,6 +192,9 @@ class KubernetesSuite extends SparkFunSuite
.set("spark.kubernetes.driver.label.spark-app-locator", appLocator)
.set("spark.kubernetes.executor.label.spark-app-locator", appLocator)
.set(NETWORK_AUTH_ENABLED.key, "true")
.set("spark.sql.maven.additionalRemoteRepositories",
"https://maven-central.storage-download.googleapis.com/maven2/," +
"https://repository.apache.org/content/groups/staging/")
sys.props.get(CONFIG_DRIVER_REQUEST_CORES).map { cpu =>
sparkAppConf.set("spark.kubernetes.driver.request.cores", cpu)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3684,7 +3684,8 @@ object SQLConf {
.stringConf
.createWithDefault(
sys.env.getOrElse("DEFAULT_ARTIFACT_REPOSITORY",
"https://maven-central.storage-download.googleapis.com/maven2/"))
"https://maven-central.storage-download.googleapis.com/maven2/," +
"https://repository.apache.org/content/groups/staging/"))

val LEGACY_FROM_DAYTIME_STRING =
buildConf("spark.sql.legacy.fromDayTimeString.enabled")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ private[hive] object IsolatedClientLoader extends Logging {
// If the error message contains hadoop, it is probably because the hadoop
// version cannot be resolved.
val fallbackVersion = if (VersionUtils.isHadoop3) {
"3.3.4"
"3.3.5"
} else {
"2.7.4"
}
Expand Down