12.84. Release 0.153
- Fix incorrect results for grouping sets when is greater than one.
- Fix silent numeric overflow when casting
INTEGER
to largeDECIMAL
types. - Fix issue where
GROUP BY ()
would produce no results if the input had no rows. - Fix null handling in
array_distinct()
when applied to thearray(bigint)
type. - Fix handling of
-2^63
as the element index for . - Fix correctness issue when the input to
TRY_CAST
evaluates to null.For types such as booleans, numbers, dates, timestamps, etc., rather thanreturning null, a default value specific to the type such asfalse
,0
or1970-01-01
was returned. - Fix potential thread deadlock in coordinator.
- Fix rare correctness issue with an aggregation on a single threaded right join when
task.concurrency
is1
. - Fix query failure when casting a map with null values.
- Fix failure when view column names contain upper-case letters.
- Fix potential performance regression due to skew issue whengrouping or joining on columns of the following types:
TINYINT
,SMALLINT
,INTEGER
,BIGINT
,REAL
,DOUBLE
,COLOR
,DATE
,INTERVAL
,TIME
,TIMESTAMP
. - Fix potential memory leak for delete queries.
- Fix query stats to not include queued time in planning time.
- Fix query completion event to log final stats for the query.
- Fix spurious log messages when queries are torn down.
- Remove broken
%w
specifier fordate_format()
and . - Improve performance of outer joins with non-equality criteria.
- Require task concurrency and task writer count to be a power of two.
- Use nulls-last ordering for
array_sort()
. - Validate that is used with exactly one argument.
- Allow running Presto with early-access Java versions.
- Add .
Functions and Language Features
- Allow subqueries in non-equality outer join criteria.
- Add support for , DROP SCHEMAand .
- Add initial support for correlated subqueries.
- Add execution support for prepared statements.
- Add
DOUBLE PRECISION
as an alias for theDOUBLE
type. - Add
typeof()
for discovering expression types. - Add decimal support to ,
ceil()
, ,round()
,,abs()
, andsign()
. - Add function for arrays.
Pluggable Resource Groups
Web UI Changes
- Fix rendering failures due to null nested data structures.
- Do not include coordinator in active worker count on cluster overview page.
- Replace buffer skew indicators on query details page with scheduled time skew.
- Add stage total buffer, pending tasks and wall time to stage statistics on query details page.
- Add option to filter task lists by status on query details page.
- Add copy button for query text, query ID, and user to query details page.
- Add support for
real
data type, which corresponds to the Javafloat
type.
CLI Changes
- Add support for configuring the HTTPS Truststore.
Hive Changes
- Fix permissions for new tables when using SQL-standard authorization.
- Improve performance of ORC reader when decoding dictionary encoded MAP.
- Allow certain combinations of queries to be executed in a transaction-ish manner,for example, when dropping a partition and then recreating it. Atomicity is notguaranteed due to fundamental limitations in the design of Hive.
- Support per-transaction cache for Hive metastore.
- Fail queries that attempt to rename partition columns.
- Add support for ORC bloom filters in predicate push down.This is can be enabled using the
hive.orc.bloom-filters.enabled
configuration property or theorc_bloom_filters_enabled
session property. - Add support for the Presto
real
type, which corresponds to the Hivefloat
type. - Add support for
char(x)
type. - Add support for creating, dropping and renaming schemas (databases).The filesystem location can be specified when creating a schema,which allows, for example, easily creating tables on S3.
- Record Presto query ID for tables or partitions written by Prestousing the
presto_query_id
table or partition property. - Include path name in error message when listing a directory fails.
- Rename
allow-all
authorization method to . Thismethod is deprecated and will be removed in a future release. - Do not retry S3 requests that are aborted intentionally.
- Set the user agent suffix for S3 requests to
presto
. - Allow configuring the user agent prefix for S3 requestsusing the
hive.s3.user-agent-prefix
configuration property. - Add support for S3-compatible storage using the
hive.s3.endpoint
andhive.s3.signer-type
configuration properties. - Add support for using AWS KMS with S3 as an encryption materials providerusing the
hive.s3.kms-key-id
configuration property. - Allow configuring a custom S3 encryption materials provider using the
hive.s3.encryption-materials-provider
configuration property.
JMX Changes
- Make name configuration for history tables case-insensitive.
- Optimize fetching column names when describing a single table.
- Add support for
char(x)
andreal
data types.
PostgreSQL Changes
- Optimize fetching column names when describing a single table.
- Add support for
char(x)
andreal
data types. - Add support for querying materialized views.
Blackhole Changes
- Add
page_processing_delay
table property.
SPI Changes
- Add
schemaExists()
method toConnectorMetadata
. - Add transaction to grant/revoke in
ConnectorAccessControl
. - Add
isCoordinator()
andgetVersion()
methods toNode
. - Remove
setOptionalConfig()
method fromPlugin
. - Remove
ServerInfo
class. - Make
NodeManager
specific to a connector instance. - Replace
ConnectorFactoryContext
withConnectorContext
. - Use
@SqlNullable
for functions instead of@Nullable
. - Use a whitelist model for plugin class loading. This prevents connectorsfrom seeing any classes that are not part of the JDK (bootstrap classes)or the SPI.