Release notes
Latest release notes for the Firebolt data warehouse.
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 for earlier-version release notes.
Firebolt might roll out releases in phases. New features and changes may not yet be available to all accounts on the release date shown.
Firebolt Release Notes - Version 4.22
New Features
Support for Iceberg is now in public preview
Added the READ_ICEBERG()
table-valued function, which allows reading from external Iceberg tables, and added Iceberg support to LOCATION
with SOURCE = 'ICEBERG'
.
Documentation for the function is available here and documentation for the new type of location here.
Added the ICU_NORMALIZE
function to standardize text formats across locales
Added the ICU_NORMALIZE
function to process text based on a specific locale. This helps in standardizing text formats across different languages and regions, ensuring uniformity and compatibility in data outputs.
Documentation for the function is available here
Added the AGO(interval)
function for subtracting intervals from the current timestamp.
Added the AGO(interval)
function, which subtracts the specified interval from the current timestamp. This addition provides users with a convenient way to calculate past dates and times, enhancing time-based data analysis.
Documentation for the function is available here.
Added a named parameter INFER_SCHEMA
to the READ_CSV
function
Added a named parameter INFER_SCHEMA
to the READ_CSV function. When INFER_SCHEMA
is true, the function determines column data types instead of using TEXT
.
Extended Parquet data type support
Added support for reading the following data types from Parquet files:
fixed_size_binary
as BYTEAuuid
as BYTEAtime32
andtime64
as TIMESTAMP with1970-01-01
as the date component. Note thattime64
with nanosecond precision is truncated to microsecond precision.
Introduced new ingestion related settings
Introduced insert_sharding
to enforce partition locality during ingestion into partitioned tables.
Introduced tablet_min_size_bytes
and tablet_max_size_bytes
to control min/max tablet sizes during ingestion.
Added an ability to override public settings per query
You can now override settings by appending WITH (<setting_1_name> = <setting_1_value>, ...)
to queries.
This lets you apply settings directly to specific queries without affecting the entire session.
Documentation is available here.
Performance Improvements
Rearchitected the Parquet reader for predictable memory usage and improved performance with external tables and READ_PARQUET
function.
The Parquet reader was rearchitected to provide more predictable memory usage when reading from external tables or using the READ_PARQUET
table-valued function. This change improves performance for many Parquet workloads. Users benefit from enhanced memory efficiency and faster query processing. More updates, like applying these changes to the COPY FROM
command, are planned for future releases.
This improvement is being rolled out gradually over multiple weeks.
UX changes
Introduced a new flow for managing service accounts with enhanced security via improved secret rotation and user associations in any organization account
Introduced a new flow for creating and altering service accounts that enables user associations in any organization account. This improvement simplifies account management and enhances security through an improved process for rotating secrets.
Bug Fixes
Fixed incorrect results when using UNION ALL
with overlapping aggregation or join keys followed by further aggregation or joining
Fixed a bug that could cause incorrect results on multi-node engines when doing a UNION ALL over subqueries that have overlapping but separate aggregation or join keys, and then later on aggregating by or joining on these keys.