Release 0.239#
Warning
There is a reliability issue in ZSTD compression that causes frequent excessive GC events in this release. classification_precision function returns wrong results, fixed in 0.239.2 release.
Warning
There is a bug in LambdaDefinitionExpression canonicalization introduced since 0.238. For more details, go to #15424.
Highlights#
Add support for
DEFINER
andINVOKER
view security models.Add support for caching Glue metastore in Hive connector.
Add Pinot SQL endpoint support.
Details#
General Changes#
Fix incorrect results from
classification_miss_rate()
,classification_fall_out()
(#14740).Fix error in
/v1/thread
end point.Fix an issue where the property
ignore_stats_calculator_failures
would not be honored for certain queries.Fix missing query completion events for queries which fail prior to executing.
Fix potential performance regression when setting
use_legacy_scheduler
is set tofalse
.Optimize queries with repeated expressions in filters or projections by computing the common expressions only once. This can be disabled by the session property
optimize_common_sub_expressions
.Optimize queries containing only
min()
andmax()
on columns that can be evaluated using metadata (e.g., Hive partitions). This is controlled by configuration propertyoptimizer.optimize-metadata-queries
and session propertyoptimize_metadata_queries
. Note: Enabling this optimization might change query result if there are metadata that refers to empty data, see #14845 for examples.Add aggregation function
set_union()
.Add local disk spilling support for queries with
ORDER BY
orDISTINCT
.Add new unified grouped execution configuration property
grouped-execution-enabled
and session propertygrouped_execution
with default set totrue
. The propertygrouped-execution-for-join-enabled
will be removed in a future release (#14886).Remove experimental feature to perform grouped execution for eligible table scans and its associated configuration property
experimental.grouped-execution-for-eligible-table-scans
and session propertygrouped_execution_for_eligible_table_scans
.Enable
dynamic-schedule-for-grouped-execution
by default. This property will be removed in a future release.Enable
grouped-execution-for-aggregation-enabled
by default. This property will be removed in a future release.Enable async page transport with non-blocking IO for exchange by default. This can be disabled by setting the configuration property
exchange.async-page-transport-enabled
tofalse
.
Security Changes#
Add support for
DEFINER
andINVOKER
view security modes. While querying a view the former uses the permissions of the view owner and the latter uses the query runner’s permissions. See CREATE VIEW.
JDBC Changes#
Implemented
DatabaseMetaData#getClientInfoProperties
API.
Web UI Changes#
Fix worker thread snapshot UI to correctly display the stack trace.
Hive Changes#
Add support for caching the Glue metastore.
Add support for warning on unfiltered partition keys. This can be enabled using the configuration property
partition-keys-to-warn-on-no-filtering
.
Elasticsearch Changes#
Add connector configuration
elasticsearch.max-http-connections
to control maximum number of persistent connections to Elasticsearch.Add connector configuration
elasticsearch.http-thread-count
to control the number of threads handling HTTP connections to Elasticsearch.Add support for numeric keyword.
Add support for composite
publish_address
(#14811).
Pinot Changes#
Add Pinot SQL endpoint support.
Add support to pushdown
DistinctLimitNode
to Pinot Query in SQL mode.
SPI Changes#
Move
DistinctLimitNode
topresto-spi
module for connectors to push down.