12.52. Release 0.198
General Changes
- Perform semantic analysis before enqueuing queries.
- Add support for selective aggregates (
FILTER) with DISTINCT argument qualifiers.
- Support
ESCAPE for LIKE predicate in SHOW SCHEMAS and SHOW TABLES queries.
- Parse decimal literals (e.g.
42.0) as DECIMAL by default. Previously, they were parsed as
DOUBLE. This behavior can be turned off via the parse-decimal-literals-as-double config option or
the parse_decimal_literals_as_double session property.
- Fix
current_date failure when the session time zone has a “gap” at 1970-01-01 00:00:00.
The time zone America/Bahia_Banderas is one such example.
- Add variant of
sequence() function for DATE with an implicit one-day step increment.
- Increase the maximum number of arguments for the
zip() function from 4 to 5.
- Add
ST_IsValid(), geometry_invalid_reason(), simplify_geometry(), and
great_circle_distance() functions.
- Support
min() and max() aggregation functions when the input type is unknown at query analysis time.
In particular, this allows using the functions with NULL literals.
- Add configuration property
task.max-local-exchange-buffer-size for setting local exchange buffer size.
- Add trace token support to the scheduler and exchange HTTP clients. Each HTTP request sent
by the scheduler and exchange HTTP clients will have a “trace token” (a unique ID) in their
headers, which will be logged in the HTTP request logs. This information can be used to
correlate the requests and responses during debugging.
- Improve query performance when dynamic writer scaling is enabled.
- Improve performance of
ST_Intersects().
- Improve query latency when tables are known to be empty during query planning.
- Optimize
array_agg() to avoid excessive object overhead and native memory usage with G1 GC.
- Improve performance for high-cardinality aggregations with
DISTINCT argument qualifiers. This
is an experimental optimization that can be activated by disabling the use_mark_distinct session
property or the optimizer.use-mark-distinct config option.
- Improve parallelism of queries that have an empty grouping set.
- Improve performance of join queries involving the
ST_Distance() function.
Resource Groups Changes
- Query Queues have been removed. Resource Groups are always enabled. The
config property
experimental.resource-groups-enabled has been removed.
- Change
WEIGHTED_FAIR scheduling policy to select oldest eligible sub group
of groups where utilization and share are identical.
CLI Changes
- The
--enable-authentication option has been removed. Kerberos authentication
is automatically enabled when --krb5-remote-service-name is specified.
- Kerberos authentication now requires HTTPS.
Hive Changes
- Add support for using AWS Glue as the metastore.
Enable it by setting the
hive.metastore config property to glue.
- Fix a bug in the ORC writer that will write incorrect data of type
VARCHAR or VARBINARY
into files.
JMX Changes
- Add wildcard character
* which allows querying several MBeans with a single query.
SPI Changes
- Add performance statistics to query plan in
QueryCompletedEvent.
- Remove
Page.getBlocks(). This call was rarely used and performed an expensive copy.
Instead, use Page.getBlock(channel) or the new helper Page.appendColumn().
- Improve validation of
ArrayBlock, MapBlock, and RowBlock during construction.