yihua commented on code in PR #14120:
URL: https://github.com/apache/hudi/pull/14120#discussion_r2448965924
##########
hudi-common/src/main/java/org/apache/hudi/common/config/HoodieCommonConfig.java:
##########
@@ -54,6 +54,14 @@ public class HoodieCommonConfig extends HoodieConfig {
.markAdvanced()
.withDocumentation("Enables support for Schema Evolution feature");
+ public static final ConfigProperty<Boolean>
SCHEMA_EVOLUTION_ALLOW_LOGICAL_EVOLUTION = ConfigProperty
+ .key("hoodie.schema.evolution.allow.logical.evolution")
Review Comment:
I think this flag can be added in an independent PR, not to be coupled with
the logical timestamp fix, to avoid confusion.
On master, the timestamp-micros to timestamp-millis type change is allowed
although it should not be, given that it incurs precision loss. Thus for new
table on table version 9, such type change in the schema should be validated
and disallowed.
However, for the logical timestamp fix to work, the Hudi streamer needs to
automatically change the field type from timestamp-micros (because of the
regression) to timestamp-millis based on the target schema in the schema
provider. So such field type change needs to be allowed for table version 8 and
below, where the field is incorrectly changed from timestamp-millis in the
target schema from the schema provider to timestamp-micros in the table schema
due to the regression.
--
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]