Release 331 (16 Mar 2020)#
General#
- Prevent query failures when worker is shut down gracefully. (#2648) 
- Fix join failures for queries involving - ORpredicate with non-comparable functions. (#2861)
- Ensure query completed event is fired when there is an error during analysis or planning. (#2842) 
- Fix memory accounting for - ORDER BYqueries. (#2612)
- Fix - last_day_of_month()for- timestamp with time zonevalues. (#2851)
- Fix excessive runtime when parsing deeply nested expressions with unmatched parenthesis. (#2968) 
- Correctly reject - dateliterals that cannot be represented in Presto. (#2888)
- Improve query performance by removing redundant data reshuffling. (#2853) 
- Improve performance of inequality joins involving - BETWEEN. (#2859)
- Improve join performance for dictionary encoded data. (#2862) 
- Enable dynamic filtering by default. (#2793) 
- Show reorder join cost in - EXPLAIN ANALYZE VERBOSE(#2725)
- Allow configuring resource groups selection based on user’s groups. (#3023) 
- Add - SET AUTHORIZATIONaction to ALTER SCHEMA. (#2673)
- Add BigQuery connector. (#2532) 
- Add support for large prepared statements. (#2719) 
Security#
- Remove unused - internal-communication.jwt.enabledconfiguration property. (#2709)
- Rename JWT configuration properties from - http.authentication.jwt.*to- http-server.authentication.jwt.*. (#2712)
- Add access control checks for query execution, view query, and kill query. This can be configured using Query rules in File-based access control. (#2213) 
- Hide columns of tables for which the user has no privileges in File-based access control. (#2925) 
JDBC driver#
- Implement - PreparedStatement.getMetaData(). (#2770)
Web UI#
- Fix copying worker address to clipboard. (#2865) 
- Fix copying query ID to clipboard. (#2872) 
- Fix display of data size values. (#2810) 
- Fix redirect from - /to- /ui/when Presto is behind a proxy. (#2908)
- Fix display of prepared queries. (#2784) 
- Display physical input read rate. (#2873) 
- Add simple form based authentication that utilizes the configured password authenticator. (#2755) 
- Allow disabling the UI via the - web-ui.enabledconfiguration property. (#2755)
CLI#
Hive connector#
- Fix incorrect results for reads from - information_schematables and metadata queries when using a Hive 3.x metastore. (#3008)
- Fix query failure when using Glue metastore and the table storage descriptor has no properties. (#2905) 
- Fix deadlock when Hive caching is enabled and has a refresh interval configured. (#2984) 
- Respect - bucketing_versiontable property when using Glue metastore. (#2905)
- Improve performance of partition fetching from Glue. (#3024) 
- Add support for bucket sort order in Glue when creating or updating a table or partition. (#1870) 
- Add support for Hive full ACID tables. (#2068, #1591, #2790) 
- Allow data conversion when reading decimal data from Parquet files and precision or scale in the file schema is different from the precision or scale in partition schema. (#2823) 
- Add option to enforce that a filter on a partition key be present in the query. This can be enabled by setting the - hive.query-partition-filter-requiredconfiguration property or the- query_partition_filter_requiredsession property to- true. (#2334)
- Allow selecting the - Intelligent-TieringS3 storage class when writing data to S3. This can be enabled by setting the- hive.s3.storage-classconfiguration property to- INTELLIGENT_TIERING. (#3032)
- Hide the Hive system schema - sysfor security reasons. (#3008)
- Add support for changing the owner of a schema. (#2673) 
MongoDB connector#
- Fix incorrect results when queries contain filters on certain data types, such as - realor- decimal. (#1781)
Other connectors#
These changes apply to the MemSQL, MySQL, PostgreSQL, Redshift, Phoenix, and SQL Server connectors.
- Add support for dropping schemas. (#2956) 
SPI#
- Remove deprecated - Identityconstructors. (#2877)
- Introduce a builder for - ConnectorIdentityand deprecate its public constructors. (#2877)
- Add support for row filtering and column masking via the - getRowFilter()and- getColumnMask()APIs in- SystemAccessControland- ConnectorAccessControl. (#1480)
- Add access control check for executing procedures. (#2924)