github-actions[bot] commented on code in PR #65122:
URL: https://github.com/apache/doris/pull/65122#discussion_r3506747752
##########
fe/fe-core/src/test/java/org/apache/doris/datasource/iceberg/IcebergMetadataOpsValidationTest.java:
##########
@@ -103,6 +106,38 @@ public void
testValidateForModifyComplexColumnRejectsIncompatibleNestedType() {
"Cannot change int to smallint in nested types");
}
+ @Test
+ public void
testValidateForModifyComplexColumnAllowsNestedDecimalPrecisionPromotion()
throws Throwable {
Review Comment:
This still only exercises the new decimal promotion through a struct field.
The production path this PR enables is recursive for all complex shapes, and
after validation `IcebergMetadataOps` takes different update paths for arrays
and maps: array elements go through `applyListChange(...
updateColumn(elementPath, ...))`, while map values go through
`applyMapChange(... updateColumn(valuePath, ...))`. A struct-only reflection
test would not catch a bad element/value path or an `UpdateSchema`
incompatibility in those two supported shapes. Please add Iceberg modify
validation coverage for at least `array<decimal(5,3)> -> array<decimal(10,3)>`
and `map<int,decimal(5,3)> -> map<int,decimal(10,3)>` (ideally through the full
modify/apply path, not only the shared helper).
--
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]