Skip to content

Commit 146811b

Browse files
committed
Revert "Revert "Fix Spark 3.5.6 compatibility: Add truncate with overwrite support to StagedDeltaTableV2""
This reverts commit 144048f.
1 parent b7493bd commit 146811b

File tree

1 file changed

+5
-3
lines changed

1 file changed

+5
-3
lines changed

spark/src/main/scala/org/apache/spark/sql/delta/catalog/DeltaCatalog.scala

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ import org.apache.spark.sql.connector.catalog.{DelegatingCatalogExtension, Ident
5353
import org.apache.spark.sql.connector.catalog.TableCapability._
5454
import org.apache.spark.sql.connector.catalog.TableChange._
5555
import org.apache.spark.sql.connector.expressions.{FieldReference, IdentityTransform, Literal, NamedReference, Transform}
56-
import org.apache.spark.sql.connector.write.{LogicalWriteInfo, V1Write, WriteBuilder}
56+
import org.apache.spark.sql.connector.write.{LogicalWriteInfo, SupportsTruncate, V1Write, WriteBuilder}
5757
import org.apache.spark.sql.execution.datasources.{DataSource, PartitioningUtils}
5858
import org.apache.spark.sql.internal.SQLConf
5959
import org.apache.spark.sql.sources.InsertableRelation
@@ -616,7 +616,7 @@ class DeltaCatalog extends DelegatingCatalogExtension
616616
override def abortStagedChanges(): Unit = {}
617617

618618
override def capabilities(): util.Set[TableCapability] = {
619-
Set(V1_BATCH_WRITE).asJava
619+
Set(V1_BATCH_WRITE, TRUNCATE, OVERWRITE_BY_FILTER).asJava
620620
}
621621

622622
override def newWriteBuilder(info: LogicalWriteInfo): WriteBuilder = {
@@ -627,7 +627,7 @@ class DeltaCatalog extends DelegatingCatalogExtension
627627
/*
628628
* WriteBuilder for creating a Delta table.
629629
*/
630-
private class DeltaV1WriteBuilder extends WriteBuilder {
630+
private class DeltaV1WriteBuilder extends WriteBuilder with SupportsTruncate {
631631
override def build(): V1Write = new V1Write {
632632
override def toInsertableRelation(): InsertableRelation = {
633633
new InsertableRelation {
@@ -637,6 +637,8 @@ class DeltaCatalog extends DelegatingCatalogExtension
637637
}
638638
}
639639
}
640+
641+
override def truncate(): WriteBuilder = this
640642
}
641643
}
642644

0 commit comments

Comments
 (0)