pvary commented on code in PR #14728:
URL: https://github.com/apache/iceberg/pull/14728#discussion_r2586056806


##########
flink/v2.1/flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/CompareSchemasVisitor.java:
##########
@@ -97,6 +101,11 @@ public Result struct(Types.StructType struct, Integer 
tableSchemaId, List<Result
     }
 
     if (struct.fields().size() != 
tableSchemaType.asStructType().fields().size()) {
+      if (dropUnusedColumns
+          && struct.fields().size() < 
tableSchemaType.asStructType().fields().size()) {
+        // We need to drop fields
+        return Result.SCHEMA_UPDATE_NEEDED;

Review Comment:
   >  We don't change the RowData in this branch (which would be 
DATA_CONVERSION_NEEDED).
   
   I think this is what I don't understand. If we receive an R5 with S3 (C1 
column dropped), then we drop the column and we don't need to change the 
RowData, as it already should not contain the C1 column.
   
   What do I miss?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to