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
DEFINERandINVOKERview 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/threadend point.Fix an issue where the property
ignore_stats_calculator_failureswould 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_scheduleris 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-queriesand 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 BYorDISTINCT.Add new unified grouped execution configuration property
grouped-execution-enabledand session propertygrouped_executionwith default set totrue. The propertygrouped-execution-for-join-enabledwill 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-scansand session propertygrouped_execution_for_eligible_table_scans.Enable
dynamic-schedule-for-grouped-executionby default. This property will be removed in a future release.Enable
grouped-execution-for-aggregation-enabledby 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-enabledtofalse.
Security Changes¶
Add support for
DEFINERandINVOKERview 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#getClientInfoPropertiesAPI.
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-connectionsto control maximum number of persistent connections to Elasticsearch.Add connector configuration
elasticsearch.http-thread-countto 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
DistinctLimitNodeto Pinot Query in SQL mode.
SPI Changes¶
Move
DistinctLimitNodetopresto-spimodule for connectors to push down.