Gabriel39 opened a new pull request, #65122:
URL: https://github.com/apache/doris/pull/65122

   ## Proposed changes
   
   Fix Iceberg complex column schema evolution validation for nested decimal 
precision widening.
   
   Doris validates complex column modifications before committing Iceberg 
schema updates. The previous nested primitive promotion rules covered varchar 
length growth, exact matches, integer widening, and `FLOAT -> DOUBLE`, but 
missed Iceberg's valid decimal promotion rule:
   
   ```text
   decimal(P, S) -> decimal(P', S), where P' >= P and S is unchanged
   ```
   
   This patch refactors the nested primitive promotion check into strict helper 
methods instead of reusing the internal table schema change matrix. Decimal 
promotion is allowed only when both sides are decimal, scale is unchanged, and 
destination precision is not smaller.
   
   ## Why
   
   The internal table schema change matrix is broader than Iceberg schema 
evolution semantics. It allows conversions such as decimal bucket changes, 
date/string conversions, and other casts that are not safe metadata-only 
promotions for Iceberg nested schema evolution.
   
   ## Tests
   
   ```bash
   mvn test -pl fe-core -am \
     -Dcheckstyle.skip=true \
     -DfailIfNoTests=false \
     -Dmaven.build.cache.enabled=false \
     -Dtest=ColumnTest,IcebergMetadataOpsValidationTest
   ```
   
   ## Related issue
   
   DORIS-26324
   


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