Data Lake: Apache Iceberg™ string column length in CREATE TABLE AS SELECT (Pending)¶
Attention
This behavior change is in the 2026_03 bundle.
For the current status of the bundle, refer to Bundle history.
When you create an Apache Iceberg™ table string column using CREATE TABLE AS SELECT (CTAS), the column will always be created with the maximum allowed length (128M). This change also extends to string type fields within structured types.
- Before the change:
Apache Iceberg™ table string columns could be created with lengths less than 128M using CREATE TABLE AS SELECT, for example, when the source was a standard Snowflake table or an expression.
- After the change:
Apache Iceberg™ table string columns will always be of length 128M when created using CREATE TABLE AS SELECT.
The Iceberg specification defines string types to be of arbitrary length, without a ceiling. In Snowflake, this is implemented as a string type with a maximum length of 128M. Previously, it was possible to bypass this maximum length restriction during CREATE TABLE AS SELECT. This behavior change now ensures that all string columns created in Iceberg tables via CREATE TABLE AS SELECT uniformly adhere to the maximum length.
Ref: 2285