11.128. Release 0.113
Warning
The ORC reader in the Hive connector is broken in this release.
Cluster Resource Management
The cluster resource manager announced in Release 0.103 is now enabled by default.You can disable it with the experimental.cluster-memory-manager-enabled
flag.Memory limits can now be configured via query.max-memory
which controls the total distributedmemory a query may use and query.max-memory-per-node
which limits the amountof memory a query may use on any one node. On each worker, theresources.reserved-system-memory
config property controls how much memory is reservedfor internal Presto data structures and temporary allocations.
Session Properties
All session properties now have a SQL type, default value and description. Thevalue for SET SESSION can now be any constant expression, and theSHOW SESSION command prints the current effective value and defaultvalue for all session properties.
This type safety extends to the SPI where propertiescan be validated and converted to any Java type usingSessionPropertyMetadata
. For an example, see HiveSessionProperties
.
Note
This is a backwards incompatible change with the previous connector SPI.If you have written a connector that uses session properties, you will needto update your code to declare the properties in the Connector
implementation and callers of ConnectorSession.getProperty()
will nowneed the expected Java type of the property.
General Changes
- Allow using any type with value window functions
first_value()
,last_value()
,nth_value()
,lead()
andlag()
. - Add
element_at()
function. - Add
url_encode()
andurl_decode()
functions. concat()
now allows arbitrary number of arguments.- Fix JMX connector. In the previous release it always returned zero rows.
- Fix handling of literal
NULL
inIS DISTINCT FROM
. - Fix an issue that caused some specific queries to fail in planning.
Hive Changes
- Fix the Hive metadata cache to properly handle negative responses.This makes the background refresh work properly by clearing the cachedmetadata entries when an object is dropped outside of Presto.In particular, this fixes the common case where a table is dropped usingHive but Presto thinks it still exists.
- Fix metastore socket leak when SOCKS connect fails.
SPI Changes
- Changed the internal representation of structural types.
Note
This is a backwards incompatible change with the previous connector SPI.If you have written a connector that uses structural types, you will needto update your code to the new APIs.