diff --git a/LICENSE-binary b/LICENSE-binary
index 40271c9924bc..034215f0ab15 100644
--- a/LICENSE-binary
+++ b/LICENSE-binary
@@ -436,7 +436,6 @@ com.esotericsoftware:reflectasm
org.codehaus.janino:commons-compiler
org.codehaus.janino:janino
jline:jline
-org.jodd:jodd-core
com.github.wendykierp:JTransforms
pl.edu.icm:JLargeArrays
diff --git a/assembly/pom.xml b/assembly/pom.xml
index 6c31ec745b5b..3fdf46bc37f3 100644
--- a/assembly/pom.xml
+++ b/assembly/pom.xml
@@ -78,7 +78,7 @@
com.google.guava
diff --git a/common/utils/src/main/scala/org/apache/spark/util/MavenUtils.scala b/common/utils/src/main/scala/org/apache/spark/util/MavenUtils.scala
index 08291859a32c..7cc441c68d65 100644
--- a/common/utils/src/main/scala/org/apache/spark/util/MavenUtils.scala
+++ b/common/utils/src/main/scala/org/apache/spark/util/MavenUtils.scala
@@ -192,6 +192,13 @@ private[spark] object MavenUtils extends Logging {
sys.env.getOrElse("DEFAULT_ARTIFACT_REPOSITORY", "https://repos.spark-packages.org/"))
sp.setName("spark-packages")
cr.add(sp)
+
+ val staging: IBiblioResolver = new IBiblioResolver
+ staging.setM2compatible(true)
+ staging.setUsepoms(true)
+ staging.setRoot("https://repository.apache.org/content/repositories/orgapachehive-1129/")
+ staging.setName("hive-staging-repo")
+ cr.add(staging)
cr
}
diff --git a/common/utils/src/test/scala/org/apache/spark/util/MavenUtilsSuite.scala b/common/utils/src/test/scala/org/apache/spark/util/MavenUtilsSuite.scala
index d30422ca8dd5..d622f2aaabcc 100644
--- a/common/utils/src/test/scala/org/apache/spark/util/MavenUtilsSuite.scala
+++ b/common/utils/src/test/scala/org/apache/spark/util/MavenUtilsSuite.scala
@@ -78,11 +78,12 @@ class MavenUtilsSuite
val settings = new IvySettings
val res1 = MavenUtils.createRepoResolvers(settings.getDefaultIvyUserDir)
// should have central and spark-packages by default
- assert(res1.getResolvers.size() === 4)
+ assert(res1.getResolvers.size() === 5)
assert(res1.getResolvers.get(0).asInstanceOf[IBiblioResolver].getName === "local-m2-cache")
assert(res1.getResolvers.get(1).asInstanceOf[FileSystemResolver].getName === "local-ivy-cache")
assert(res1.getResolvers.get(2).asInstanceOf[IBiblioResolver].getName === "central")
assert(res1.getResolvers.get(3).asInstanceOf[IBiblioResolver].getName === "spark-packages")
+ assert(res1.getResolvers.get(4).asInstanceOf[IBiblioResolver].getName === "hive-staging-repo")
}
test("create additional resolvers") {
diff --git a/connector/connect/server/pom.xml b/connector/connect/server/pom.xml
index f093f4f19622..4ce31c2c4597 100644
--- a/connector/connect/server/pom.xml
+++ b/connector/connect/server/pom.xml
@@ -160,10 +160,6 @@
jakarta.servlet
jakarta.servlet-api
-
- javax.servlet
- javax.servlet-api
-
com.google.guava
guava
diff --git a/connector/kafka-0-10-assembly/pom.xml b/connector/kafka-0-10-assembly/pom.xml
index b2fcbdf8eca7..bd311b3a9804 100644
--- a/connector/kafka-0-10-assembly/pom.xml
+++ b/connector/kafka-0-10-assembly/pom.xml
@@ -54,11 +54,6 @@
commons-codec
provided
-
- commons-lang
- commons-lang
- provided
-
com.google.protobuf
protobuf-java
diff --git a/connector/kinesis-asl-assembly/pom.xml b/connector/kinesis-asl-assembly/pom.xml
index 577ec2153083..0e93526fce72 100644
--- a/connector/kinesis-asl-assembly/pom.xml
+++ b/connector/kinesis-asl-assembly/pom.xml
@@ -54,11 +54,6 @@
jackson-databind
provided
-
- commons-lang
- commons-lang
- provided
-
org.glassfish.jersey.core
jersey-client
diff --git a/core/pom.xml b/core/pom.xml
index 6468f500db04..332c89e41490 100644
--- a/core/pom.xml
+++ b/core/pom.xml
@@ -166,10 +166,6 @@
jetty-servlets
compile
-
- javax.servlet
- javax.servlet-api
-
jakarta.servlet
jakarta.servlet-api
@@ -546,6 +542,7 @@
org.eclipse.jetty:jetty-util
org.eclipse.jetty:jetty-server
com.google.guava:guava
+ com.google.guava:failureaccess
com.google.protobuf:*
diff --git a/dev/deps/spark-deps-hadoop-3-hive-2.3 b/dev/deps/spark-deps-hadoop-3-hive-2.3
index 5d933e34e40b..e10a3db13657 100644
--- a/dev/deps/spark-deps-hadoop-3-hive-2.3
+++ b/dev/deps/spark-deps-hadoop-3-hive-2.3
@@ -46,7 +46,6 @@ commons-compress/1.26.1//commons-compress-1.26.1.jar
commons-crypto/1.1.0//commons-crypto-1.1.0.jar
commons-dbcp/1.4//commons-dbcp-1.4.jar
commons-io/2.16.1//commons-io-2.16.1.jar
-commons-lang/2.6//commons-lang-2.6.jar
commons-lang3/3.14.0//commons-lang3-3.14.0.jar
commons-math3/3.6.1//commons-math3-3.6.1.jar
commons-pool/1.5.4//commons-pool-1.5.4.jar
@@ -64,12 +63,14 @@ derby/10.16.1.1//derby-10.16.1.1.jar
derbyshared/10.16.1.1//derbyshared-10.16.1.1.jar
derbytools/10.16.1.1//derbytools-10.16.1.1.jar
dropwizard-metrics-hadoop-metrics2-reporter/0.1.2//dropwizard-metrics-hadoop-metrics2-reporter-0.1.2.jar
+error_prone_annotations/2.26.1//error_prone_annotations-2.26.1.jar
esdk-obs-java/3.20.4.2//esdk-obs-java-3.20.4.2.jar
+failureaccess/1.0.2//failureaccess-1.0.2.jar
flatbuffers-java/23.5.26//flatbuffers-java-23.5.26.jar
gcs-connector/hadoop3-2.2.21/shaded/gcs-connector-hadoop3-2.2.21-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
+guava/33.1.0-jre//guava-33.1.0-jre.jar
hadoop-aliyun/3.4.0//hadoop-aliyun-3.4.0.jar
hadoop-annotations/3.4.0//hadoop-annotations-3.4.0.jar
hadoop-aws/3.4.0//hadoop-aws-3.4.0.jar
@@ -81,19 +82,19 @@ hadoop-cloud-storage/3.4.0//hadoop-cloud-storage-3.4.0.jar
hadoop-huaweicloud/3.4.0//hadoop-huaweicloud-3.4.0.jar
hadoop-shaded-guava/1.2.0//hadoop-shaded-guava-1.2.0.jar
hadoop-yarn-server-web-proxy/3.4.0//hadoop-yarn-server-web-proxy-3.4.0.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
-hive-exec/2.3.9/core/hive-exec-2.3.9-core.jar
-hive-jdbc/2.3.9//hive-jdbc-2.3.9.jar
-hive-llap-common/2.3.9//hive-llap-common-2.3.9.jar
-hive-metastore/2.3.9//hive-metastore-2.3.9.jar
-hive-serde/2.3.9//hive-serde-2.3.9.jar
+hive-beeline/2.3.10//hive-beeline-2.3.10.jar
+hive-cli/2.3.10//hive-cli-2.3.10.jar
+hive-common/2.3.10//hive-common-2.3.10.jar
+hive-exec/2.3.10/core/hive-exec-2.3.10-core.jar
+hive-jdbc/2.3.10//hive-jdbc-2.3.10.jar
+hive-llap-common/2.3.10//hive-llap-common-2.3.10.jar
+hive-metastore/2.3.10//hive-metastore-2.3.10.jar
+hive-serde/2.3.10//hive-serde-2.3.10.jar
hive-service-rpc/4.0.0//hive-service-rpc-4.0.0.jar
-hive-shims-0.23/2.3.9//hive-shims-0.23-2.3.9.jar
-hive-shims-common/2.3.9//hive-shims-common-2.3.9.jar
-hive-shims-scheduler/2.3.9//hive-shims-scheduler-2.3.9.jar
-hive-shims/2.3.9//hive-shims-2.3.9.jar
+hive-shims-0.23/2.3.10//hive-shims-0.23-2.3.10.jar
+hive-shims-common/2.3.10//hive-shims-common-2.3.10.jar
+hive-shims-scheduler/2.3.10//hive-shims-scheduler-2.3.10.jar
+hive-shims/2.3.10//hive-shims-2.3.10.jar
hive-storage-api/2.8.1//hive-storage-api-2.8.1.jar
hk2-api/3.0.3//hk2-api-3.0.3.jar
hk2-locator/3.0.3//hk2-locator-3.0.3.jar
@@ -104,14 +105,13 @@ icu4j/72.1//icu4j-72.1.jar
ini4j/0.5.4//ini4j-0.5.4.jar
istack-commons-runtime/3.0.8//istack-commons-runtime-3.0.8.jar
ivy/2.5.2//ivy-2.5.2.jar
+j2objc-annotations/3.0.0//j2objc-annotations-3.0.0.jar
jackson-annotations/2.17.0//jackson-annotations-2.17.0.jar
-jackson-core-asl/1.9.13//jackson-core-asl-1.9.13.jar
jackson-core/2.17.0//jackson-core-2.17.0.jar
jackson-databind/2.17.0//jackson-databind-2.17.0.jar
jackson-dataformat-cbor/2.17.0//jackson-dataformat-cbor-2.17.0.jar
jackson-dataformat-yaml/2.17.0//jackson-dataformat-yaml-2.17.0.jar
jackson-datatype-jsr310/2.17.0//jackson-datatype-jsr310-2.17.0.jar
-jackson-mapper-asl/1.9.13//jackson-mapper-asl-1.9.13.jar
jackson-module-scala_2.13/2.17.0//jackson-module-scala_2.13-2.17.0.jar
jakarta.annotation-api/2.0.0//jakarta.annotation-api-2.0.0.jar
jakarta.inject-api/2.0.1//jakarta.inject-api-2.0.1.jar
@@ -123,8 +123,8 @@ janino/3.1.9//janino-3.1.9.jar
java-diff-utils/4.12//java-diff-utils-4.12.jar
java-xmlbuilder/1.2//java-xmlbuilder-1.2.jar
javassist/3.29.2-GA//javassist-3.29.2-GA.jar
+javax.annotation-api/1.3.2//javax.annotation-api-1.3.2.jar
javax.jdo/3.2.0-m3//javax.jdo-3.2.0-m3.jar
-javax.servlet-api/4.0.1//javax.servlet-api-4.0.1.jar
javolution/5.5.1//javolution-5.5.1.jar
jaxb-api/2.2.11//jaxb-api-2.2.11.jar
jaxb-runtime/2.3.2//jaxb-runtime-2.3.2.jar
@@ -144,7 +144,6 @@ jline/2.14.6//jline-2.14.6.jar
jline/3.24.1//jline-3.24.1.jar
jna/5.13.0//jna-5.13.0.jar
joda-time/2.12.7//joda-time-2.12.7.jar
-jodd-core/3.5.2//jodd-core-3.5.2.jar
jpam/1.1//jpam-1.1.jar
json/1.8//json-1.8.jar
json4s-ast_2.13/4.0.7//json4s-ast_2.13-4.0.7.jar
@@ -184,7 +183,8 @@ kubernetes-model-storageclass/6.12.1//kubernetes-model-storageclass-6.12.1.jar
lapack/3.0.3//lapack-3.0.3.jar
leveldbjni-all/1.8//leveldbjni-all-1.8.jar
libfb303/0.9.3//libfb303-0.9.3.jar
-libthrift/0.12.0//libthrift-0.12.0.jar
+libthrift/0.16.0//libthrift-0.16.0.jar
+listenablefuture/9999.0-empty-to-avoid-conflict-with-guava//listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar
log4j-1.2-api/2.22.1//log4j-1.2-api-2.22.1.jar
log4j-api/2.22.1//log4j-api-2.22.1.jar
log4j-core/2.22.1//log4j-core-2.22.1.jar
diff --git a/dev/test-dependencies.sh b/dev/test-dependencies.sh
index 175f59a70094..197f88341a2e 100755
--- a/dev/test-dependencies.sh
+++ b/dev/test-dependencies.sh
@@ -49,7 +49,7 @@ OLD_VERSION=$($MVN -q \
--non-recursive \
org.codehaus.mojo:exec-maven-plugin:1.6.0:exec | grep -E '[0-9]+\.[0-9]+\.[0-9]+')
# dependency:get for guava and jetty-io are workaround for SPARK-37302.
-GUAVA_VERSION=$(build/mvn help:evaluate -Dexpression=guava.version -q -DforceStdout | grep -E "^[0-9.]+$")
+GUAVA_VERSION=$(build/mvn help:evaluate -Dexpression=guava.version -q -DforceStdout | grep -E "^[0-9\.]+")
build/mvn dependency:get -Dartifact=com.google.guava:guava:${GUAVA_VERSION} -q
JETTY_VERSION=$(build/mvn help:evaluate -Dexpression=jetty.version -q -DforceStdout | grep -E "[0-9]+\.[0-9]+\.[0-9]+")
build/mvn dependency:get -Dartifact=org.eclipse.jetty:jetty-io:${JETTY_VERSION} -q
diff --git a/licenses-binary/LICENSE-jodd.txt b/licenses-binary/LICENSE-jodd.txt
deleted file mode 100644
index cc6b458adb38..000000000000
--- a/licenses-binary/LICENSE-jodd.txt
+++ /dev/null
@@ -1,24 +0,0 @@
-Copyright (c) 2003-present, Jodd Team (https://jodd.org)
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
-1. Redistributions of source code must retain the above copyright notice,
-this list of conditions and the following disclaimer.
-
-2. Redistributions in binary form must reproduce the above copyright
-notice, this list of conditions and the following disclaimer in the
-documentation and/or other materials provided with the distribution.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
-LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGE.
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 05c6f9841e61..dd67058e9e59 100644
--- a/pom.xml
+++ b/pom.xml
@@ -132,8 +132,8 @@
org.apache.hive
core
- 2.3.9
- 2.3.9
+ 2.3.10
+ 2.3.10
2.3
@@ -145,8 +145,6 @@
shaded-protobuf
11.0.20
5.0.0
-
- 4.0.1
0.10.0
2.5.2
2.0.8
@@ -182,7 +180,6 @@
true
true
true
- 1.9.13
2.17.0
2.17.0
2.3.1
@@ -192,21 +189,18 @@
1.17.0
1.26.1
2.16.1
-
- 2.6
3.14.0
2.12.0
4.1.17
- 14.0.1
+ 33.1.0-jre
3.1.9
3.0.12
2.12.7
- 3.5.2
3.0.0
2.2.11
- 0.12.0
+ 0.16.0
4.13.1
1.1
4.17.0
@@ -359,6 +353,15 @@
false
+
+
+ hive-staging-repo
+ https://repository.apache.org/content/repositories/orgapachehive-1129/
+
+ true
+ always
+
+
@@ -612,11 +615,6 @@
commons-text
1.12.0
-
- commons-lang
- commons-lang
- ${commons-lang2.version}
-
commons-io
commons-io
@@ -1942,19 +1940,6 @@
-
-
- org.codehaus.jackson
- jackson-core-asl
- ${codehaus.jackson.version}
- ${hive.jackson.scope}
-
-
- org.codehaus.jackson
- jackson-mapper-asl
- ${codehaus.jackson.version}
- ${hive.jackson.scope}
-
${hive.group}
hive-beeline
@@ -2291,8 +2276,8 @@
janino
- org.pentaho
- pentaho-aggdesigner-algorithm
+ net.hydromatic
+ aggdesigner-algorithm
@@ -2362,6 +2347,10 @@
org.codehaus.groovy
groovy-all
+
+ com.lmax
+ disruptor
+
@@ -2783,11 +2772,6 @@
joda-time
${joda.version}
-
- org.jodd
- jodd-core
- ${jodd.version}
-
org.datanucleus
datanucleus-core
@@ -2813,6 +2797,10 @@
org.slf4j
slf4j-api
+
+ javax.annotation
+ javax.annotation-api
+
@@ -2895,12 +2883,6 @@
hive-storage-api
${hive.storage.version}
${hive.storage.scope}
-
-
- commons-lang
- commons-lang
-
-
commons-cli
@@ -2933,11 +2915,6 @@
jakarta.servlet-api
${jakartaservlet.version}
-
- javax.servlet
- javax.servlet-api
- ${javaxservlet.version}
-
@@ -3452,6 +3429,7 @@
org.spark-project.spark:unused
com.google.guava:guava
+ com.google.guava:failureaccess
org.jpmml:*
diff --git a/project/SparkBuild.scala b/project/SparkBuild.scala
index 5bb7745d77bf..ab3194381cab 100644
--- a/project/SparkBuild.scala
+++ b/project/SparkBuild.scala
@@ -276,6 +276,9 @@ object SparkBuild extends PomBuild {
DefaultMavenRepository,
Resolver.mavenLocal,
Resolver.file("ivyLocal", file(Path.userHome.absolutePath + "/.ivy2/local"))(Resolver.ivyStylePatterns)
+ ) ++ Seq(
+ "hive-staging-repo" at "https://repository.apache.org/content/repositories/orgapachehive-1129/",
+ Resolver.file("local", file(Path.userHome.absolutePath + "/.ivy2/local"))(Resolver.ivyStylePatterns)
),
externalResolvers := resolvers.value,
otherResolvers := SbtPomKeys.mvnLocalRepository(dotM2 => Seq(Resolver.file("dotM2", dotM2))).value,
@@ -1052,7 +1055,7 @@ object KubernetesIntegrationTests {
* Overrides to work around sbt's dependency resolution being different from Maven's.
*/
object DependencyOverrides {
- lazy val guavaVersion = sys.props.get("guava.version").getOrElse("14.0.1")
+ lazy val guavaVersion = sys.props.get("guava.version").getOrElse("33.1.0-jre")
lazy val settings = Seq(
dependencyOverrides += "com.google.guava" % "guava" % guavaVersion,
dependencyOverrides += "xerces" % "xercesImpl" % "2.12.2",
diff --git a/sql/catalyst/src/main/scala/org/apache/spark/sql/internal/SQLConf.scala b/sql/catalyst/src/main/scala/org/apache/spark/sql/internal/SQLConf.scala
index df75985043d0..2e0e8ca1ce9c 100644
--- a/sql/catalyst/src/main/scala/org/apache/spark/sql/internal/SQLConf.scala
+++ b/sql/catalyst/src/main/scala/org/apache/spark/sql/internal/SQLConf.scala
@@ -4155,6 +4155,9 @@ object SQLConf {
.stringConf
.createWithDefault(
sys.env.getOrElse("DEFAULT_ARTIFACT_REPOSITORY",
+ // scalastyle:off line.size.limit
+ "https://repository.apache.org/content/repositories/orgapachehive-1129/," +
+ // scalastyle:on line.size.limit
"https://maven-central.storage-download.googleapis.com/maven2/"))
val LEGACY_FROM_DAYTIME_STRING =
diff --git a/sql/catalyst/src/test/scala/org/apache/spark/sql/catalyst/expressions/IntervalExpressionsSuite.scala b/sql/catalyst/src/test/scala/org/apache/spark/sql/catalyst/expressions/IntervalExpressionsSuite.scala
index a60ab778623e..eed9b9aa2032 100644
--- a/sql/catalyst/src/test/scala/org/apache/spark/sql/catalyst/expressions/IntervalExpressionsSuite.scala
+++ b/sql/catalyst/src/test/scala/org/apache/spark/sql/catalyst/expressions/IntervalExpressionsSuite.scala
@@ -341,7 +341,7 @@ class IntervalExpressionsSuite extends SparkFunSuite with ExpressionEvalHelper {
Seq(
(Period.ofMonths(2), Int.MaxValue) -> "overflow",
- (Period.ofMonths(Int.MinValue), 10d) -> "not in range",
+ (Period.ofMonths(Int.MinValue), 10d) -> "out of range",
(Period.ofMonths(-100), Float.NaN) -> "input is infinite or NaN",
(Period.ofMonths(200), Double.PositiveInfinity) -> "input is infinite or NaN",
(Period.ofMonths(-200), Float.NegativeInfinity) -> "input is infinite or NaN"
diff --git a/sql/core/src/test/resources/sql-tests/results/ansi/interval.sql.out b/sql/core/src/test/resources/sql-tests/results/ansi/interval.sql.out
index 4e220ba9885c..08afa0a5297d 100644
--- a/sql/core/src/test/resources/sql-tests/results/ansi/interval.sql.out
+++ b/sql/core/src/test/resources/sql-tests/results/ansi/interval.sql.out
@@ -2866,7 +2866,7 @@ SELECT (INTERVAL '-178956970-8' YEAR TO MONTH) / -1.0D
struct<>
-- !query output
java.lang.ArithmeticException
-not in range
+rounded value is out of range for input 2.147483648E9 and rounding mode HALF_UP
-- !query
@@ -2946,7 +2946,7 @@ SELECT (INTERVAL '-106751991 04:00:54.775808' DAY TO SECOND) / -1.0D
struct<>
-- !query output
java.lang.ArithmeticException
-not in range
+rounded value is out of range for input 9.223372036854776E18 and rounding mode HALF_UP
-- !query
diff --git a/sql/core/src/test/resources/sql-tests/results/interval.sql.out b/sql/core/src/test/resources/sql-tests/results/interval.sql.out
index e2b9e11eb633..a701f4c3c18e 100644
--- a/sql/core/src/test/resources/sql-tests/results/interval.sql.out
+++ b/sql/core/src/test/resources/sql-tests/results/interval.sql.out
@@ -2679,7 +2679,7 @@ SELECT (INTERVAL '-178956970-8' YEAR TO MONTH) / -1.0D
struct<>
-- !query output
java.lang.ArithmeticException
-not in range
+rounded value is out of range for input 2.147483648E9 and rounding mode HALF_UP
-- !query
@@ -2759,7 +2759,7 @@ SELECT (INTERVAL '-106751991 04:00:54.775808' DAY TO SECOND) / -1.0D
struct<>
-- !query output
java.lang.ArithmeticException
-not in range
+rounded value is out of range for input 9.223372036854776E18 and rounding mode HALF_UP
-- !query
diff --git a/sql/hive-thriftserver/pom.xml b/sql/hive-thriftserver/pom.xml
index 6a352f8a530d..176d25891549 100644
--- a/sql/hive-thriftserver/pom.xml
+++ b/sql/hive-thriftserver/pom.xml
@@ -95,11 +95,6 @@
jetty-servlet
provided
-
- javax.servlet
- javax.servlet-api
- provided
-
org.seleniumhq.selenium
diff --git a/sql/hive-thriftserver/src/main/java/org/apache/hive/service/auth/KerberosSaslHelper.java b/sql/hive-thriftserver/src/main/java/org/apache/hive/service/auth/KerberosSaslHelper.java
index 175412ed98c6..ef91f94eeec2 100644
--- a/sql/hive-thriftserver/src/main/java/org/apache/hive/service/auth/KerberosSaslHelper.java
+++ b/sql/hive-thriftserver/src/main/java/org/apache/hive/service/auth/KerberosSaslHelper.java
@@ -30,6 +30,7 @@
import org.apache.thrift.TProcessorFactory;
import org.apache.thrift.transport.TSaslClientTransport;
import org.apache.thrift.transport.TTransport;
+import org.apache.thrift.transport.TTransportException;
public final class KerberosSaslHelper {
@@ -68,8 +69,8 @@ public static TTransport createSubjectAssumedTransport(String principal,
new TSaslClientTransport("GSSAPI", null, names[0], names[1], saslProps, null,
underlyingTransport);
return new TSubjectAssumingTransport(saslTransport);
- } catch (SaslException se) {
- throw new IOException("Could not instantiate SASL transport", se);
+ } catch (SaslException | TTransportException se) {
+ throw new IOException("Could not instantiate transport", se);
}
}
diff --git a/sql/hive-thriftserver/src/main/java/org/apache/hive/service/auth/PlainSaslHelper.java b/sql/hive-thriftserver/src/main/java/org/apache/hive/service/auth/PlainSaslHelper.java
index c06f6ec34653..5ac29950f4f8 100644
--- a/sql/hive-thriftserver/src/main/java/org/apache/hive/service/auth/PlainSaslHelper.java
+++ b/sql/hive-thriftserver/src/main/java/org/apache/hive/service/auth/PlainSaslHelper.java
@@ -38,6 +38,7 @@
import org.apache.thrift.transport.TSaslClientTransport;
import org.apache.thrift.transport.TSaslServerTransport;
import org.apache.thrift.transport.TTransport;
+import org.apache.thrift.transport.TTransportException;
import org.apache.thrift.transport.TTransportFactory;
public final class PlainSaslHelper {
@@ -64,7 +65,7 @@ public static TTransportFactory getPlainTransportFactory(String authTypeStr)
}
public static TTransport getPlainTransport(String username, String password,
- TTransport underlyingTransport) throws SaslException {
+ TTransport underlyingTransport) throws SaslException, TTransportException {
return new TSaslClientTransport("PLAIN", null, null, null, new HashMap(),
new PlainCallbackHandler(username, password), underlyingTransport);
}
diff --git a/sql/hive-thriftserver/src/main/java/org/apache/hive/service/auth/TSetIpAddressProcessor.java b/sql/hive-thriftserver/src/main/java/org/apache/hive/service/auth/TSetIpAddressProcessor.java
index 1205d21be6be..b727b4e27de8 100644
--- a/sql/hive-thriftserver/src/main/java/org/apache/hive/service/auth/TSetIpAddressProcessor.java
+++ b/sql/hive-thriftserver/src/main/java/org/apache/hive/service/auth/TSetIpAddressProcessor.java
@@ -45,11 +45,12 @@ public TSetIpAddressProcessor(Iface iface) {
}
@Override
- public boolean process(final TProtocol in, final TProtocol out) throws TException {
+ public void process(final TProtocol in, final TProtocol out) throws TException {
setIpAddress(in);
setUserName(in);
try {
- return super.process(in, out);
+ super.process(in, out);
+ return;
} finally {
THREAD_LOCAL_USER_NAME.remove();
THREAD_LOCAL_IP_ADDRESS.remove();
diff --git a/sql/hive-thriftserver/src/main/java/org/apache/hive/service/cli/thrift/ThriftBinaryCLIService.java b/sql/hive-thriftserver/src/main/java/org/apache/hive/service/cli/thrift/ThriftBinaryCLIService.java
index 4d99496876fd..c7fa7b5f3e0a 100644
--- a/sql/hive-thriftserver/src/main/java/org/apache/hive/service/cli/thrift/ThriftBinaryCLIService.java
+++ b/sql/hive-thriftserver/src/main/java/org/apache/hive/service/cli/thrift/ThriftBinaryCLIService.java
@@ -91,16 +91,10 @@ protected void initializeServer() {
// Server args
int maxMessageSize = hiveConf.getIntVar(HiveConf.ConfVars.HIVE_SERVER2_THRIFT_MAX_MESSAGE_SIZE);
- int requestTimeout = (int) hiveConf.getTimeVar(
- HiveConf.ConfVars.HIVE_SERVER2_THRIFT_LOGIN_TIMEOUT, TimeUnit.SECONDS);
- int beBackoffSlotLength = (int) hiveConf.getTimeVar(
- HiveConf.ConfVars.HIVE_SERVER2_THRIFT_LOGIN_BEBACKOFF_SLOT_LENGTH, TimeUnit.MILLISECONDS);
TThreadPoolServer.Args sargs = new TThreadPoolServer.Args(serverSocket)
.processorFactory(processorFactory).transportFactory(transportFactory)
.protocolFactory(new TBinaryProtocol.Factory())
.inputProtocolFactory(new TBinaryProtocol.Factory(true, true, maxMessageSize, maxMessageSize))
- .requestTimeout(requestTimeout).requestTimeoutUnit(TimeUnit.SECONDS)
- .beBackoffSlotLength(beBackoffSlotLength).beBackoffSlotLengthUnit(TimeUnit.MILLISECONDS)
.executorService(executorService);
// TCP Server
diff --git a/sql/hive-thriftserver/src/main/java/org/apache/hive/service/cli/thrift/ThriftCLIService.java b/sql/hive-thriftserver/src/main/java/org/apache/hive/service/cli/thrift/ThriftCLIService.java
index 4b18e2950a3d..ac0a6d59bee8 100644
--- a/sql/hive-thriftserver/src/main/java/org/apache/hive/service/cli/thrift/ThriftCLIService.java
+++ b/sql/hive-thriftserver/src/main/java/org/apache/hive/service/cli/thrift/ThriftCLIService.java
@@ -83,6 +83,16 @@ public void setSessionHandle(SessionHandle sessionHandle) {
public SessionHandle getSessionHandle() {
return sessionHandle;
}
+
+ @Override
+ public T unwrap(Class aClass) {
+ return null;
+ }
+
+ @Override
+ public boolean isWrapperFor(Class> aClass) {
+ return false;
+ }
}
public ThriftCLIService(CLIService service, String serviceName) {
diff --git a/sql/hive/pom.xml b/sql/hive/pom.xml
index 3895d9dc5a63..fa8de0d95d4b 100644
--- a/sql/hive/pom.xml
+++ b/sql/hive/pom.xml
@@ -135,15 +135,7 @@
org.apache.httpcomponents
httpclient
-
- org.codehaus.jackson
- jackson-mapper-asl
-
-
- javax.servlet
- javax.servlet-api
-
commons-codec
commons-codec
@@ -152,10 +144,6 @@
joda-time
joda-time
-
- org.jodd
- jodd-core
-
com.google.code.findbugs
jsr305
diff --git a/sql/hive/src/main/scala/org/apache/spark/sql/hive/client/package.scala b/sql/hive/src/main/scala/org/apache/spark/sql/hive/client/package.scala
index 564c87a0fca8..d172af21a917 100644
--- a/sql/hive/src/main/scala/org/apache/spark/sql/hive/client/package.scala
+++ b/sql/hive/src/main/scala/org/apache/spark/sql/hive/client/package.scala
@@ -59,13 +59,12 @@ package object client {
"org.pentaho:pentaho-aggdesigner-algorithm"))
// Since HIVE-23980, calcite-core included in Hive package jar.
- case object v2_3 extends HiveVersion("2.3.9",
+ case object v2_3 extends HiveVersion("2.3.10",
exclusions = Seq("org.apache.calcite:calcite-core",
"org.apache.calcite:calcite-druid",
"org.apache.calcite.avatica:avatica",
- "com.fasterxml.jackson.core:*",
"org.apache.curator:*",
- "org.pentaho:pentaho-aggdesigner-algorithm",
+ "net.hydromatic:aggdesigner-algorithm",
"org.apache.hive:hive-vector-code-gen"))
// Since Hive 3.0, HookUtils uses org.apache.logging.log4j.util.Strings
diff --git a/sql/hive/src/test/scala/org/apache/spark/sql/hive/HiveSparkSubmitSuite.scala b/sql/hive/src/test/scala/org/apache/spark/sql/hive/HiveSparkSubmitSuite.scala
index c7aa41295909..8df8a7b8fbbb 100644
--- a/sql/hive/src/test/scala/org/apache/spark/sql/hive/HiveSparkSubmitSuite.scala
+++ b/sql/hive/src/test/scala/org/apache/spark/sql/hive/HiveSparkSubmitSuite.scala
@@ -387,7 +387,7 @@ object SetMetastoreURLTest extends Logging {
val builder = SparkSession.builder()
.config(sparkConf)
.config(UI_ENABLED.key, "false")
- .config(HiveUtils.HIVE_METASTORE_VERSION.key, "2.3.9")
+ .config(HiveUtils.HIVE_METASTORE_VERSION.key, "2.3.10")
// The issue described in SPARK-16901 only appear when
// spark.sql.hive.metastore.jars is not set to builtin.
.config(HiveUtils.HIVE_METASTORE_JARS.key, "maven")
@@ -698,7 +698,7 @@ object SparkSQLConfTest extends Logging {
val filteredSettings = super.getAll.filterNot(e => isMetastoreSetting(e._1))
// Always add these two metastore settings at the beginning.
- (HiveUtils.HIVE_METASTORE_VERSION.key -> "2.3.9") +:
+ (HiveUtils.HIVE_METASTORE_VERSION.key -> "2.3.10") +:
(HiveUtils.HIVE_METASTORE_JARS.key -> "maven") +:
filteredSettings
}
@@ -726,7 +726,7 @@ object SPARK_9757 extends QueryTest {
val hiveWarehouseLocation = Utils.createTempDir()
val sparkContext = new SparkContext(
new SparkConf()
- .set(HiveUtils.HIVE_METASTORE_VERSION.key, "2.3.9")
+ .set(HiveUtils.HIVE_METASTORE_VERSION.key, "2.3.10")
.set(HiveUtils.HIVE_METASTORE_JARS.key, "maven")
.set(UI_ENABLED, false)
.set(WAREHOUSE_PATH.key, hiveWarehouseLocation.toString))
diff --git a/sql/hive/src/test/scala/org/apache/spark/sql/hive/execution/HiveQuerySuite.scala b/sql/hive/src/test/scala/org/apache/spark/sql/hive/execution/HiveQuerySuite.scala
index 397da6c18b50..5e58959ca4f7 100644
--- a/sql/hive/src/test/scala/org/apache/spark/sql/hive/execution/HiveQuerySuite.scala
+++ b/sql/hive/src/test/scala/org/apache/spark/sql/hive/execution/HiveQuerySuite.scala
@@ -1627,10 +1627,8 @@ class HiveQuerySuite extends HiveComparisonTest with SQLTestUtils with BeforeAnd
test("SPARK-33084: Add jar support Ivy URI in SQL") {
val testData = TestHive.getHiveFile("data/files/sample.json").toURI
withTable("t") {
- // hive-catalog-core has some transitive dependencies which dont exist on maven central
- // and hence cannot be found in the test environment or are non-jar (.pom) which cause
- // failures in tests. Use transitive=false as it should be good enough to test the Ivy
- // support in Hive ADD JAR
+ // Use transitive=false as it should be good enough to test the Ivy support
+ // in Hive ADD JAR
sql(s"ADD JAR ivy://org.apache.hive.hcatalog:hive-hcatalog-core:$hiveVersion" +
"?transitive=false")
sql(