Announcing the LocalStack for Snowflake 2026.07.0 Release

Announcing the LocalStack for Snowflake 2026.07.0 Release

Introduction

LocalStack for Snowflake 2026.07.0 is now available. This release fixes persistence across container restarts and updates transaction handling for DDL statements. It also addresses query translation issues found in dbt models and other workloads that use CTEs, aggregate aliases, UNPIVOT, QUALIFY, and UNION ALL.

The remaining changes improve metadata queries and JavaScript stored procedure behavior. There are no new SQL functions in this release.

Get a free LocalStack trial to access the latest fixes in LocalStack for Snowflake 2026.07.0.

How to upgrade?

To upgrade to LocalStack for Snowflake 2026.07.0 using the LocalStack CLI, run:

Terminal window
docker pull localstack/snowflake:2026.07.0
localstack start --stack snowflake

If you’re using the lstk CLI, the first run prompts you to select a default emulator. You can select and run the Snowflake emulator from that flow as well.

If you’re using LocalStack for Snowflake with Docker CLI or Docker Compose, you can pin the image version in your docker run command or Docker Compose file to 2026.07.0.

What’s new in LocalStack for Snowflake 2026.07.0?

Persistence across restarts

Tables and data created with PERSISTENCE=1 are now available after stopping and restarting the emulator. Startup initialization can run repeatedly against the persisted database without failing on resources that already exist.

Snapshot persistence also skips an unnecessary SQL dump during shutdown. This allows the emulator to save its state within the container shutdown period instead of leaving the persisted state incomplete.

DDL transaction behavior

DDL statements now follow Snowflake transaction behavior. If a CREATE, ALTER, DROP, TRUNCATE, or COMMENT statement runs during an open transaction, the emulator commits that transaction before executing the DDL statement.

As a result, tables created by one session are immediately visible to other sessions. This fixes intermittent object-not-found errors in multi-threaded dbt runs that use pooled connections. GRANT and REVOKE keep the current transaction open, matching Snowflake’s behavior for those statements.

SQL function and expression compatibility updates

This release includes fixes for SQL functions and query expressions used in CTE-heavy and dbt-generated queries:

Function or expression Notes
MAX / GREATEST Expressions such as MAX(GREATEST(ts1, ts2)) now resolve ts1 and ts2 as source columns when the same names are also used by aggregate aliases. This avoids an invalid nested aggregate during query translation.
UNPIVOT UNPIVOT now preserves non-unpivoted columns when its source is a CTE defined through SELECT *, including qualified stars, joins, EXCLUDE, and RENAME.
COALESCE Boolean comparisons inside COALESCE now use compatible types when the expression appears under NOT, AND, or a WHERE clause.
QUALIFY / UNION ALL A QUALIFY branch that selects * through a CTE chain can now be combined with other UNION ALL branches without adding an internal window column to that branch.

Improved parity with Snowflake

We have made several additional changes to match Snowflake behavior:

  • SHOW USER FUNCTIONS now limits results to the requested schema. Internal emulator functions are omitted, so dbt relation discovery no longer fails while populating its cache.
  • Scripting keywords such as loop, while, and cursor can now be used as table aliases and column qualifiers with fully qualified table names. This applies to standalone queries and views generated by dbt.
  • JavaScript stored procedures now support both documented forms of ResultSet.getColumnValue(): a one-based column index or a column name. Unknown names and indexes return a Snowflake-style error.

Conclusion

LocalStack for Snowflake 2026.07.0 is a maintenance release focused on persistence, transaction behavior, and SQL compatibility. Existing dbt projects and test suites should encounter fewer failures around cross-session DDL visibility, CTE column resolution, aggregate aliases, and stored procedure result access.

Sign up for a free trial or upgrade to LocalStack for Snowflake 2026.07.0 to use these fixes in your local development environment.