Release 0.199
Add support for spatial left join.
Add hmac_md5(), , hmac_sha256(), and functions.
Add array_sort() function that takes a lambda as a comparator.
Add geospatial function.
Add support for clause in aggregations for queries that use grouping sets.
Expand grouped execution support to
GROUP BY
andUNION ALL
, making it possible to execute aggregations with less peak memory usage.Change the signature of
round(x, d)
andtruncate(x, d)
functions so thatd
is of typeINTEGER
. Previously,d
could be of typeBIGINT
. This behavior can be restored with thedeprecated.legacy-round-n-bigint
config option or thelegacy_round_n_bigint
session property.Accessing anonymous row fields via
.field0
,.field1
, etc., is no longer allowed. This behavior can be restored with thedeprecated.legacy-row-field-ordinal-access
config option or thelegacy_row_field_ordinal_access
session property.Finish joins early when possible if one side has no rows. This happens for either side of an inner join, for the left side of a left join, and for the right side of a right join.
Improve predicate evaluation performance during predicate pushdown in planning.
Improve the performance of queries that use predicates on the columns of
information_schema
tables.Improve the performance of map-to-map cast.
Improve the performance of
ST_Touches()
,ST_Within()
,ST_Overlaps()
,ST_Disjoint()
, andST_Crosses()
functions.Improve the serialization performance of geometry values.
Improve the performance of functions that return maps.
Improve the performance of joins and aggregations that include map columns.
Server RPM Changes
- Add support for installing on machines with OpenJDK.
JDBC Driver Changes
- Make driver compatible with Java 9+. It previously failed with
IncompatibleClassChangeError
.
Fix ORC writer failure when writing
NULL
values into columns of typeROW
,MAP
, orARRAY
.Support reading Hive partitions that have a different bucket count than the table, as long as the ratio is a power of two (
1:2^n
or2^n:1
).Add support for the
skip.header.line.count
table property.Prevent reading from tables with the table property.
Partitioned tables now have a hidden system table that contains the partition values. A table named
example
will have a partitions table namedexample$partitions
. This provides the same functionality and data asSHOW PARTITIONS
.Partition name listings, both via the
$partitions
table and usingSHOW PARTITIONS
, are no longer subject to the limit defined by thehive.max-partitions-per-scan
config option.Allow marking partitions as offline via the
presto_offline
partition property.
Thrift Connector Changes
- Most of the config property names are different due to replacing the underlying Thrift client implementation. Please see for details on the new properties.
Allow connectors to provide system tables dynamically.
Add
resourceGroupId
andqueryType
fields toSessionConfigurationContext
.Simplify the constructor of
RowBlock
.Replace the
writeObject()
method inBlockBuilder
withappendStructure()
.