9.22 Release notes (with behavior changes): Preview¶
Attention
Content on this page is available in advance of the completion of the 9.22 release, which is currently either pending or in progress and is scheduled for completion on August 5 (subject to change).
Features, updates, or behavior changes described on this page might not be available in your accounts until the release is complete.
For updates to these release notes, see Release notes change log.
Behavior change bundles¶
This release contains the following behavior change bundles:
Bundle Name |
Status in this Release |
Previous Status |
---|---|---|
Disabled by default; admins can enable for testing |
N/A (introduced in this release) |
|
Enabled by default; admins can disable for opt-out |
Disabled by default |
|
Generally enabled; admins can no longer enable/disable |
Enabled by default |
The status for each bundle will change in the next behavior change release, planned for September 2025; however, this schedule is subject to change.
For more information about bundle statuses and how they may impact your accounts, see About Behavior Changes.
Security updates¶
Private Service Connect Endpoints for internal stages on Google Cloud (General availability)
Snowflake customers can now create, configure, and use Google Private Service Connect Endpoints to access Snowflake internal stages.
Data pipeline updates¶
Dynamic tables: Support for immutability constraints¶
Immutability constraints give you finer control over dynamic table updates by allowing parts of the table to remain unchanged instead of always reflecting the latest query results.
By marking specific regions as immutable, you can:
Prevent propagation of updates or deletions to existing data.
Restrict inserts, updates, and deletes for rows matching a condition.
Limit future modifications while still allowing incremental updates to other parts of the table.
To define immutability constraints, use the IMMUTABLE WHERE
parameter in the CREATE DYNAMIC TABLE or
ALTER DYNAMIC TABLE command.
Dynamic tables: Support for backfill¶
You can now create a dynamic table with its initial data backfilled from a regular table. Backfilling is a zero-copy, low-cost operation that makes the source data immediately available in the dynamic table.
You can backfill data into a dynamic table while still defining a custom refresh query for future updates. With immutability constraints, backfilled data remains unchanged even if it no longer matches the upstream source, ensuring it persists over time.
Release notes change log¶
Announcement |
Update |
Date |
---|---|---|
Release notes |
Initial publication (preview) |
Aug 01, 2025 |