ALTER ICEBERG TABLE … CONVERT TO MANAGED: Retains original storage path (Pending)¶
Attention
This behavior change is in the 2026_07 bundle.
For the current status of the bundle, refer to Bundle history.
When you convert an externally managed Apache Iceberg™ table to a Snowflake-managed Iceberg table using
ALTER ICEBERG TABLE … CONVERT TO MANAGED,
Snowflake retains the table’s original storage path (BASE_LOCATION) by default instead of assigning
a new path with a random suffix.
- Before the change:
When you didn’t specify a
BASE_LOCATION, Snowflake always assigned a new random-suffix path for the managed table. That new path invalidated any credentials scoped to the original storage path. External engines, such as Apache Spark™ or Apache Flink, that accessed the table through Horizon Iceberg REST Catalog credential vending lost access after conversion.- After the change:
When the 2026_07 behavior change bundle is enabled in your account and you don’t specify a
BASE_LOCATION, Snowflake retains the table’s pre-conversion storage path. Credentials scoped to the original path remain valid. If you supply an explicitBASE_LOCATION, Snowflake uses that path regardless of this change.If the retained path overlaps the storage path of an existing managed table, the conversion fails with an error. You can resolve the error by doing one of the following:
- Supply an explicit
BASE_LOCATION. - Drop the overlapping table.
To keep the previous path-assignment behavior, disable the 2026_07 behavior change bundle in your account before the opt-out period ends. You can disable the bundle during the testing period and during the opt-out period.
- Supply an explicit
Ref: 2385