> ## Documentation Index
> Fetch the complete documentation index at: https://firebolt-aggregate-helm-docs-pr-30.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Latest release notes for the Firebolt data warehouse.

# Release notes

Firebolt continuously releases updates so that you can benefit from the latest and most stable service. These updates might happen daily, but we aggregate release notes to cover a longer time period for easier reference. The most recent release notes from the latest version are below.

* See the [Release notes archive](/release-notes/release-notes-archive) for earlier-version release notes.

<Note>
  **The rollout of version 4.32 is expected to be completed by the end of June 2026.**
  Firebolt might roll out releases in phases. New features and changes may not yet be available to all accounts.
</Note>

## Firebolt Release Notes - Version 4.32

### New Features

**Iceberg catalog databases with `CREATE ICEBERG DATABASE`**
Firebolt now supports creating databases backed by an Apache Iceberg catalog using [`CREATE ICEBERG DATABASE`](/reference-sql/commands/data-definition/create-iceberg-database). Both file-based catalogs and REST-shaped catalogs are supported, including AWS Glue, Snowflake Open Catalog, and Databricks. Tables in the catalog can be queried directly, and the available catalogs are listed in [`information_schema.catalogs`](/reference-sql/information-schema/catalogs). For REST-shaped catalogs, object-storage credentials can be supplied in a dedicated `STORAGE_CREDENTIALS` clause (separate from the catalog `CREDENTIALS` used for catalog authentication), which Firebolt uses as a fallback when the catalog does not vend its own storage credentials.

**Inspect Iceberg table files with `LIST_ICEBERG_FILES`**
The new [`LIST_ICEBERG_FILES`](/reference-sql/functions-reference/iceberg/list_iceberg_files) table-valued function returns one row per file of an Apache Iceberg table, with the file metadata, statistics, partition values, and deletes from the table's manifests, so you can inspect file layout and sizes without scanning the data.

**Non-constant `LIKE` patterns**
[`LIKE`](/reference-sql/functions-reference/string/like), [`ILIKE`](/reference-sql/functions-reference/string/ilike), and [`regexp_like`](/reference-sql/functions-reference/string/regexp-like) now accept non-constant (dynamic) patterns, for example a pattern that comes from a column.

**Four-argument PostgreSQL-compatible `regexp_replace`**
Added support for the four-argument PostgreSQL form [`regexp_replace(string, pattern, replacement, flags)`](/reference-sql/functions-reference/string/regexp-replace). This improves compatibility with PostgreSQL-based BI clients that emit the flags argument.

### Behavior Changes

**`GRANT` and `REVOKE` restricted on built-in roles**
Built-in roles (`account_admin`, `system_admin`, `security_admin`, and `public`) are no longer modifiable through `GRANT`, `REVOKE`, or `ALTER DEFAULT PRIVILEGES`. The one exception is the `public` role: when the new `enable_grant_revoke_on_public_role` setting is enabled and the caller is `account_admin`, `GRANT` and `REVOKE` on `public` are permitted. The setting defaults to `false`.

### Performance Improvements

**Fast path for simple `VALUES` clauses**
Simple `VALUES` clauses are now planned through a dedicated fast path, reducing planning overhead.

**`CASE WHEN` simplified to `COALESCE`**
The optimizer now rewrites applicable `CASE WHEN` expressions into `COALESCE`, producing simpler and faster plans.

**Faster optimization of deeply nested `CASE WHEN`**
Logical optimization of deeply nested `CASE WHEN` expressions no longer grows exponentially, preventing long planning times on such queries.

**Improved cardinality estimation for `UNION`**
Cardinality estimation for union nodes has been improved, leading to better plan choices for queries involving unions.

### Bug Fixes

**Invalid UTF-8 handling in `LIKE` rewriting**
Fixed an invalid UTF-8 bug in the `LIKE` operator rewrite rule that could produce incorrect results for certain patterns.

**Cross-schema `CLONE` stored the schema name instead of its identifier**
Fixed an issue where cloning a table across schemas stored the schema name rather than the schema UUID as the `schema_id`, which could lead to incorrect schema resolution.

**Handling of renamed columns**
Changing the primary index to a renamed column now actually rewrites the data.
