Skip to content

Commit ba61ef5

Browse files
author
WanKun
committed
[CORE] Optimize Iceberg schema field matching
1 parent 60ce4f8 commit ba61ef5

1 file changed

Lines changed: 3 additions & 3 deletions

File tree

gluten-iceberg/src/main/scala/org/apache/gluten/execution/IcebergScanTransformer.scala

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ import org.apache.spark.sql.execution.datasources.v2.BatchScanExec
3333
import org.apache.spark.sql.execution.metric.SQLMetrics
3434
import org.apache.spark.sql.types.{ArrayType, DataType, StructType}
3535

36-
import org.apache.iceberg.{BaseTable, MetadataColumns, Schema, SnapshotSummary, TableProperties}
36+
import org.apache.iceberg.{BaseTable, MetadataColumns, SnapshotSummary, TableProperties}
3737
import org.apache.iceberg.avro.AvroSchemaUtil
3838
import org.apache.iceberg.spark.source.{GlutenIcebergSourceUtil, SparkTable}
3939
import org.apache.iceberg.spark.source.metrics.NumSplits
@@ -271,12 +271,12 @@ case class IcebergScanTransformer(
271271
case (iceberg: Types.StructType, currentType: Types.StructType, sparkStruct: StructType) =>
272272
sparkStruct.forall {
273273
sparkField =>
274-
val currentField = new Schema(currentType.fields()).findField(sparkField.name)
274+
val currentField = currentType.field(sparkField.name)
275275
// Find not exists column
276276
if (currentField == null) {
277277
false
278278
} else {
279-
val field = new Schema(iceberg.fields()).findField(currentField.fieldId())
279+
val field = iceberg.field(currentField.fieldId())
280280
// The field does not exist in old schema, add column case
281281
if (field == null) {
282282
true

0 commit comments

Comments
 (0)