diff --git a/.github/workflows/master.yml b/.github/workflows/master.yml
index f8febf9ed..aeb0a14bb 100644
--- a/.github/workflows/master.yml
+++ b/.github/workflows/master.yml
@@ -50,6 +50,7 @@ jobs:
- '3.1'
- '3.2'
- '3.3'
+ - '3.4'
spark-archive: [""]
exclude-tags: [""]
comment: ["normal"]
@@ -64,6 +65,11 @@ jobs:
spark-archive: '-Dspark.archive.mirror=https://archive.apache.org/dist/spark/spark-3.2.4 -Dspark.archive.name=spark-3.2.4-bin-hadoop3.2.tgz'
exclude-tags: '-Dmaven.plugin.scalatest.exclude.tags=org.scalatest.tags.Slow,org.apache.kyuubi.tags.DeltaTest,org.apache.kyuubi.tags.IcebergTest'
comment: 'verify-on-spark-3.2-binary'
+ - java: 8
+ spark: '3.3'
+ spark-archive: '-Dspark.archive.mirror=https://archive.apache.org/dist/spark/spark-3.4.0 -Dspark.archive.name=spark-3.4.0-bin-hadoop3.tgz'
+ exclude-tags: '-Dmaven.plugin.scalatest.exclude.tags=org.scalatest.tags.Slow,org.apache.kyuubi.tags.DeltaTest,org.apache.kyuubi.tags.IcebergTest'
+ comment: 'verify-on-spark-3.4-binary'
env:
SPARK_LOCAL_IP: localhost
steps:
@@ -88,6 +94,12 @@ jobs:
- name: Build and test Kyuubi and Spark with maven w/o linters
run: |
TEST_MODULES="dev/kyuubi-codecov"
+ if [[ "${{ matrix.spark }}" == "3.4" ]]; then
+ # FIXME: Spark 3.4 supports authz plugin
+ TEST_MODULES="$TEST_MODULES,!extensions/spark/kyuubi-spark-authz"
+ # FIXME: Spark 3.4 supports lineage plugin
+ TEST_MODULES="$TEST_MODULES,!extensions/spark/kyuubi-spark-lineage"
+ fi
./build/mvn clean install ${MVN_OPT} -pl ${TEST_MODULES} -am \
-Pspark-${{ matrix.spark }} ${{ matrix.spark-archive }} ${{ matrix.exclude-tags }}
- name: Code coverage
diff --git a/extensions/spark/kyuubi-extension-spark-3-1/pom.xml b/extensions/spark/kyuubi-extension-spark-3-1/pom.xml
index 9f218f9d0..a36dffaef 100644
--- a/extensions/spark/kyuubi-extension-spark-3-1/pom.xml
+++ b/extensions/spark/kyuubi-extension-spark-3-1/pom.xml
@@ -125,10 +125,21 @@
jakarta.xml.bind-api
test
+
+
+ org.apache.logging.log4j
+ log4j-1.2-api
+ test
+
+
+
+ org.apache.logging.log4j
+ log4j-slf4j-impl
+ test
+
-
org.apache.maven.plugins
diff --git a/extensions/spark/kyuubi-extension-spark-3-2/pom.xml b/extensions/spark/kyuubi-extension-spark-3-2/pom.xml
index a80040aca..3f8019fa9 100644
--- a/extensions/spark/kyuubi-extension-spark-3-2/pom.xml
+++ b/extensions/spark/kyuubi-extension-spark-3-2/pom.xml
@@ -125,10 +125,21 @@
jakarta.xml.bind-api
test
+
+
+ org.apache.logging.log4j
+ log4j-1.2-api
+ test
+
+
+
+ org.apache.logging.log4j
+ log4j-slf4j-impl
+ test
+
-
org.apache.maven.plugins
diff --git a/extensions/spark/kyuubi-extension-spark-common/pom.xml b/extensions/spark/kyuubi-extension-spark-common/pom.xml
index 6d4bd1443..e11600408 100644
--- a/extensions/spark/kyuubi-extension-spark-common/pom.xml
+++ b/extensions/spark/kyuubi-extension-spark-common/pom.xml
@@ -110,10 +110,21 @@
jakarta.xml.bind-api
test
+
+
+ org.apache.logging.log4j
+ log4j-1.2-api
+ test
+
+
+
+ org.apache.logging.log4j
+ log4j-slf4j-impl
+ test
+
-
org.antlr
diff --git a/extensions/spark/kyuubi-spark-authz/README.md b/extensions/spark/kyuubi-spark-authz/README.md
index eb3804a65..617a40a16 100644
--- a/extensions/spark/kyuubi-spark-authz/README.md
+++ b/extensions/spark/kyuubi-spark-authz/README.md
@@ -34,6 +34,7 @@ build/mvn clean package -pl :kyuubi-spark-authz_2.12 -Dspark.version=3.2.1 -Dran
`-Dspark.version=`
- [x] master
+- [ ] 3.4.x
- [x] 3.3.x (default)
- [x] 3.2.x
- [x] 3.1.x
diff --git a/extensions/spark/kyuubi-spark-connector-common/pom.xml b/extensions/spark/kyuubi-spark-connector-common/pom.xml
index 1cba0ccdd..e36361753 100644
--- a/extensions/spark/kyuubi-spark-connector-common/pom.xml
+++ b/extensions/spark/kyuubi-spark-connector-common/pom.xml
@@ -87,10 +87,21 @@
scalacheck-1-17_${scala.binary.version}
test
+
+
+ org.apache.logging.log4j
+ log4j-1.2-api
+ test
+
+
+
+ org.apache.logging.log4j
+ log4j-slf4j-impl
+ test
+
-
org.apache.maven.plugins
diff --git a/extensions/spark/kyuubi-spark-connector-tpcds/src/test/scala/org/apache/kyuubi/spark/connector/tpcds/TPCDSCatalogSuite.scala b/extensions/spark/kyuubi-spark-connector-tpcds/src/test/scala/org/apache/kyuubi/spark/connector/tpcds/TPCDSCatalogSuite.scala
index 8a37d95e8..55a7fa3e9 100644
--- a/extensions/spark/kyuubi-spark-connector-tpcds/src/test/scala/org/apache/kyuubi/spark/connector/tpcds/TPCDSCatalogSuite.scala
+++ b/extensions/spark/kyuubi-spark-connector-tpcds/src/test/scala/org/apache/kyuubi/spark/connector/tpcds/TPCDSCatalogSuite.scala
@@ -170,7 +170,8 @@ class TPCDSCatalogSuite extends KyuubiFunSuite {
val exception = intercept[AnalysisException] {
spark.table("tpcds.sf1.nonexistent_table")
}
- assert(exception.message === "Table or view not found: tpcds.sf1.nonexistent_table")
+ assert(exception.message.contains("Table or view not found")
+ || exception.message.contains("TABLE_OR_VIEW_NOT_FOUND"))
}
}
}
diff --git a/extensions/spark/kyuubi-spark-connector-tpch/src/test/scala/org/apache/kyuubi/spark/connector/tpch/TPCHCatalogSuite.scala b/extensions/spark/kyuubi-spark-connector-tpch/src/test/scala/org/apache/kyuubi/spark/connector/tpch/TPCHCatalogSuite.scala
index ee817ecae..0fdfc2689 100644
--- a/extensions/spark/kyuubi-spark-connector-tpch/src/test/scala/org/apache/kyuubi/spark/connector/tpch/TPCHCatalogSuite.scala
+++ b/extensions/spark/kyuubi-spark-connector-tpch/src/test/scala/org/apache/kyuubi/spark/connector/tpch/TPCHCatalogSuite.scala
@@ -158,7 +158,8 @@ class TPCHCatalogSuite extends KyuubiFunSuite {
val exception = intercept[AnalysisException] {
spark.table("tpch.sf1.nonexistent_table")
}
- assert(exception.message === "Table or view not found: tpch.sf1.nonexistent_table")
+ assert(exception.message.contains("Table or view not found")
+ || exception.message.contains("TABLE_OR_VIEW_NOT_FOUND"))
}
}
}
diff --git a/extensions/spark/kyuubi-spark-lineage/README.md b/extensions/spark/kyuubi-spark-lineage/README.md
index 5365f2d77..a713221ac 100644
--- a/extensions/spark/kyuubi-spark-lineage/README.md
+++ b/extensions/spark/kyuubi-spark-lineage/README.md
@@ -34,6 +34,7 @@ build/mvn clean package -pl :kyuubi-spark-lineage_2.12 -am -Dspark.version=3.2.1
`-Dspark.version=`
- [x] master
+- [ ] 3.4.x
- [x] 3.3.x (default)
- [x] 3.2.x
- [x] 3.1.x
diff --git a/extensions/spark/kyuubi-spark-lineage/pom.xml b/extensions/spark/kyuubi-spark-lineage/pom.xml
index bc13480d7..8583dfec0 100644
--- a/extensions/spark/kyuubi-spark-lineage/pom.xml
+++ b/extensions/spark/kyuubi-spark-lineage/pom.xml
@@ -85,10 +85,14 @@
test
+
+ com.google.guava
+ guava
+ test
+
-
${project.basedir}/src/test/resources
diff --git a/pom.xml b/pom.xml
index a6e5d2df5..ae6dc2e29 100644
--- a/pom.xml
+++ b/pom.xml
@@ -196,6 +196,8 @@
2.2.1
4.9.1
0.40.12
+
+ 1.7.0
0.9.3
363
1.4
@@ -403,19 +405,15 @@
org.apache.spark
- spark-repl_${scala.binary.version}
+ spark-core_${scala.binary.version}
${spark.version}
-
+
org.apache.hadoop
hadoop-client
-
+
log4j
log4j
@@ -424,33 +422,24 @@
org.slf4j
slf4j-log4j12
+
+
+ org.apache.logging.log4j
+ log4j-slf4j2-impl
+
+
+ org.apache.spark
+ spark-repl_${scala.binary.version}
+ ${spark.version}
+
+
org.apache.spark
spark-sql_${scala.binary.version}
${spark.version}
-
-
-
- org.apache.hadoop
- hadoop-client
-
-
-
- log4j
- log4j
-
-
- org.slf4j
- slf4j-log4j12
-
-
@@ -458,28 +447,11 @@
spark-hive_${scala.binary.version}
${spark.version}
-
-
- org.apache.hadoop
- hadoop-client
-
+
org.apache.hadoop
hadoop-common
-
-
- log4j
- log4j
-
-
- org.slf4j
- slf4j-log4j12
-
@@ -489,17 +461,25 @@
${spark.version}
test-jar
-
+
org.apache.hadoop
hadoop-client
-
+
+
+ log4j
+ log4j
+
+
+ org.slf4j
+ slf4j-log4j12
+
+
+
+ org.apache.logging.log4j
+ log4j-slf4j2-impl
+
@@ -508,19 +488,6 @@
spark-catalyst_${scala.binary.version}
${spark.version}
test-jar
-
-
-
- org.apache.hadoop
- hadoop-client
-
-
-
@@ -528,19 +495,6 @@
spark-sql_${scala.binary.version}
${spark.version}
test-jar
-
-
-
- org.apache.hadoop
- hadoop-client
-
-
-
@@ -1524,6 +1478,12 @@
service
${openai.java.version}
+
+
+ org.threeten
+ threeten-extra
+ ${threeten.version}
+
@@ -2210,23 +2170,26 @@
+
+ spark-3.4
+
+ extensions/spark/kyuubi-spark-connector-hive
+ extensions/spark/kyuubi-spark-connector-kudu
+
+
+ 3.4.0
+
+ 3.3
+ org.scalatest.tags.Slow,org.apache.kyuubi.tags.DeltaTest,org.apache.kyuubi.tags.HudiTest,org.apache.kyuubi.tags.IcebergTest
+
+
+
spark-master
3.5.0-SNAPSHOT
-
- 1.7.0
org.scalatest.tags.Slow,org.apache.kyuubi.tags.DeltaTest,org.apache.kyuubi.tags.IcebergTest,org.apache.kyuubi.tags.PySparkTest
-
-
-
- org.threeten
- threeten-extra
- ${threeten.version}
-
-
-