rdblue commented on code in PR #12841: URL: https://github.com/apache/iceberg/pull/12841#discussion_r2059186760
########## format/spec.md: ########## @@ -266,7 +266,9 @@ The `initial-default` is set only when a field is added to an existing schema. T The `initial-default` and `write-default` produce SQL default value behavior, without rewriting data files. SQL default value behavior when a field is added handles all existing rows as though the rows were written with the new field's default value. Default value changes may only affect future records and all known fields are written into data files. Omitting a known field when writing a data file is never allowed. The write default for a field must be written if a field is not supplied to a write. If the write default for a required field is not set, the writer must fail. -All columns of `unknown`, `geometry`, and `geography` types must default to null. Non-null values for `initial-default` or `write-default` are invalid. +All columns of `unknown`, `variant`, `geometry`, and `geography` types must default to null. Non-null values for `initial-default` or `write-default` are invalid. + +Default values for struct fields must be either null or non-null to avoid conflicts between the struct-level default for a field and a field-level default. Default values for struct fields are tracked at the field level. Review Comment: @aokolnychyi, there are two cases: * The struct field's default is null -- engines should use null * The struct field's default is a non-null struct with no field values -- engines will be passed a struct-level default that is produced by initializing a new struct and setting each field's default -- 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: issues-unsubscr...@iceberg.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org For additional commands, e-mail: issues-h...@iceberg.apache.org