github-actions[bot] commented on code in PR #67166:
URL: https://github.com/apache/doris/pull/67166#discussion_r3862201732


##########
fe/fe-core/src/main/java/org/apache/doris/nereids/types/StructField.java:
##########
@@ -49,7 +50,13 @@ public StructField(String name, DataType dataType, boolean 
nullable, String comm
 
     public StructField(String name, DataType dataType, boolean nullable, 
String comment,
             boolean commentSpecified) {
+        this(name, name, dataType, nullable, comment, commentSpecified);
+    }
+
+    public StructField(String name, String originalName, DataType dataType, 
boolean nullable, String comment,

Review Comment:
   [P1] Add the required Javadoc for this public constructor
   
   The PR's CheckStyle job fails on this exact declaration with 
`MissingJavadocMethod`, so the FE build cannot pass until this new public 
overload has Javadoc. Please document it (especially the normalized `name` 
versus `originalName` contract) and rerun checkstyle.



##########
fe/fe-core/src/main/java/org/apache/doris/datasource/connector/converter/ConnectorColumnConverter.java:
##########
@@ -238,7 +238,7 @@ public static ConnectorType toConnectorType(Type dorisType) 
{
             // isCommentSpecified() so the diff can tell an omitted COMMENT 
(preserve the current doc) from
             // COMMENT '' (clear it) — the comment string is "" for both 
(#65329 omit-preserves-metadata).
             for (StructField f : struct.getFields()) {
-                names.add(f.getName());
+                names.add(f.getOriginalName());

Review Comment:
   [P1] Preserve the existing Iceberg spelling during complex MODIFY
   
   This now exports the spelling from the new DDL verbatim. For an existing 
Iceberg field `CaseSensitive`, `MODIFY COLUMN payload 
STRUCT<casesensitive:BIGINT>` reaches 
`IcebergComplexTypeDiff.applyStructChange`, whose case-sensitive 
`String.equals` treats it as a forbidden rename, even though Doris and the 
legacy `ColumnType` path compare the normalized field name and accept this 
case-insensitive match. This makes a legal type widening depend on repeating 
the remote case exactly (also under ARRAY/MAP). Please match existing fields 
case-insensitively and retain `oldField.name()` unless the explicit rename 
operation is used.



-- 
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