diff --git a/phoenix5-spark3/pom.xml b/phoenix5-spark3/pom.xml
index 634cb9de..f93162d0 100644
--- a/phoenix5-spark3/pom.xml
+++ b/phoenix5-spark3/pom.xml
@@ -60,6 +60,12 @@
+
+ org.apache.spark
+ spark-common-utils_${scala.binary.version}
+ ${spark.version}
+ provided
+
org.apache.spark
spark-unsafe_${scala.binary.version}
@@ -78,6 +84,12 @@
${spark.version}
provided
+
+ org.apache.spark
+ spark-sql-api_${scala.binary.version}
+ ${spark.version}
+ provided
+
@@ -106,6 +118,12 @@
${scala.version}
provided
+
+ org.scala-lang
+ scala-reflect
+ ${scala.version}
+ provided
+
@@ -143,12 +161,6 @@
-
- org.scala-lang
- scala-reflect
- ${scala.version}
- test
-
org.scalactic
scalactic_${scala.binary.version}
diff --git a/phoenix5-spark3/src/main/java/org/apache/phoenix/spark/sql/connector/writer/PhoenixDataWriter.java b/phoenix5-spark3/src/main/java/org/apache/phoenix/spark/sql/connector/writer/PhoenixDataWriter.java
index ea5338fe..360a545e 100644
--- a/phoenix5-spark3/src/main/java/org/apache/phoenix/spark/sql/connector/writer/PhoenixDataWriter.java
+++ b/phoenix5-spark3/src/main/java/org/apache/phoenix/spark/sql/connector/writer/PhoenixDataWriter.java
@@ -36,7 +36,7 @@
import org.apache.spark.sql.Row;
import org.apache.spark.sql.catalyst.InternalRow;
import org.apache.spark.sql.catalyst.encoders.ExpressionEncoder;
-import org.apache.spark.sql.catalyst.encoders.RowEncoder$;
+import org.apache.spark.sql.catalyst.types.DataTypeUtils;
import org.apache.spark.sql.execution.datasources.SparkJdbcUtil;
import org.apache.spark.sql.execution.datasources.jdbc.PhoenixJdbcDialect$;
import org.apache.spark.sql.connector.write.DataWriter;
@@ -67,10 +67,11 @@ public class PhoenixDataWriter implements DataWriter {
this.schema = options.getSchema();
List attrs = new ArrayList<>();
- for (AttributeReference ref : scala.collection.JavaConverters.seqAsJavaListConverter(schema.toAttributes()).asJava()) {
+ for (AttributeReference ref : scala.collection.JavaConverters.seqAsJavaListConverter(
+ DataTypeUtils.toAttributes(schema)).asJava()) {
attrs.add(ref.toAttribute());
}
- encoder = RowEncoder$.MODULE$.apply(schema).resolveAndBind( scala.collection.JavaConverters.asScalaIteratorConverter(attrs.iterator()).asScala().toSeq(), SimpleAnalyzer$.MODULE$);
+ encoder = ExpressionEncoder.apply(schema).resolveAndBind( scala.collection.JavaConverters.asScalaIteratorConverter(attrs.iterator()).asScala().toSeq(), SimpleAnalyzer$.MODULE$);
try {
this.conn = DriverManager.getConnection(jdbcUrl, connectionProps);
List colNames = new ArrayList<>(Arrays.asList(options.getSchema().names()));
diff --git a/pom.xml b/pom.xml
index acb45f16..d038788c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -119,7 +119,7 @@
2.4.8
2.11.12
2.11
- 3.4.4
+ 3.5.6
2.12.18
2.12
1.2.17