Release 407 (16 Feb 2023)#
General#
- Add support for correlated queries involving a - VALUESclause with a single row. (#15989)
- Reduce memory usage for large schemas. This behavior can be enabled with the - query.remote-task.enable-adaptive-request-sizeconfiguration property and configured with the- query.remote-task.max-request-size,- query.remote-task.request-size-headroom, and- query.remote-task.guaranteed-splits-per-taskconfiguration properties or their respective session properties. (#15721)
- Improve concurrency when small, concurrent queries are run on a large cluster by automatically determining how many nodes to use for distributed joins and aggregations. This can be managed with the - query.max-hash-partition-count(renamed from- query.hash-partition-count) and- query.min-hash-partition-countconfiguration properties. (#15489)
- Improve query memory tracking. (#15983) 
- Improve memory usage accounting for queries with dynamic filters. (#16110) 
- Improve query performance when a predicate evaluates to a null value. (#15744) 
- Improve performance of queries with joins on the output of global aggregations. (#15858) 
- Improve performance of selective queries, queries that read a small number of columns, and queries that process tables with large Parquet row groups or ORC stripes. (#15579) 
- Improve performance of queries with window functions. (#15994) 
- Return an exit code of - 100when Trino crashes during startup. (#16113)
- Fix precision loss when converting - timevalues with a precision higher than three and- time with time zonevalues with lower precision. (#15861)
- Fix potential incorrect results due to a query reporting normal completion instead of failing. (#15917) 
- Fix connection errors caused by a reusable connection being closed. (#16121) 
- Fix incorrect results for queries involving an equality predicate in a - WHEREclause that is equal to a term of a- SELECTclause in one of the branches of a- JOIN. (#16101)
Cassandra connector#
- Add - querytable function for full query pass-through to the connector. (#15973)
Delta Lake connector#
- Add support for the - unregister_tableprocedure. (#15784)
- Add support for inserting into tables that have - CHECKconstraints. (#15396)
- Add support for writing to the change data feed. This can be enabled with the - delta.enableChangeDataFeedtable property. (#15453)
- Add a - $historysystem table which can be queried to inspect Delta Lake table history. (#15683)
- Improve performance of reading decimal types from Parquet files. (#15713) 
- Improve performance of reading numeric types from Parquet files. (#15850) 
- Improve performance of reading string types from Parquet files. (#15897, #15923) 
- Improve performance of reading timestamp and boolean types from Parquet files. (#15954) 
- Improve query performance on tables created by Trino with - CREATE TABLE AS. (#15878)
- Remove support for the legacy Parquet writer. (#15436) 
- Fix query failure when reading Parquet files written by Apache Impala. (#15942) 
- Fix listing relations failure when a Glue table has no table type set. (#15909) 
Hive connector#
- Reduce query latency. (#15811) 
- Improve performance of reading decimal types from Parquet files. (#15713) 
- Improve performance of reading numeric types from Parquet files. (#15850) 
- Improve performance of reading string types from Parquet files. (#15897, #15923) 
- Improve performance of reading timestamp and boolean types from Parquet files. (#15954) 
- Improve performance of predicate pushdown to partitioned columns in tables with a high number of partitions. (#16113) 
- Reduce server errors in high-load scenarios. This can be enabled with the - hive.s3.connect-ttlconfiguration property. (#16005)
- Allow setting the - hive.max-partitions-per-scanconfiguration property to a value lower than the value set in- hive.max-partitions-for-eager-load. (#16111)
- Fix query failure when reading Parquet files written by Apache Impala. (#15942) 
- Fix listing relations failure when a Glue table has no table type set. (#15909) 
Hudi connector#
- Improve performance of reading decimal types from Parquet files. (#15713) 
- Improve performance of reading numeric types from Parquet files. (#15850) 
- Improve performance of reading string types from Parquet files. (#15897, #15923) 
- Improve performance of reading timestamp and boolean types from Parquet files. (#15954) 
- Fix query failure when reading Parquet files written by Apache Impala. (#15942) 
Iceberg connector#
- Add support for the - unregister_tableprocedure. (#15784)
- Add support for - register_tableprocedures in the JDBC catalog. (#15853)
- Add support for specifying a user and password when connecting to the JDBC catalog via the - iceberg.jdbc-catalog.connection-userand- iceberg.jdbc-catalog.connection-passwordconfiguration properties. (#16040)
- Add support for compacting manifests asynchronously, which can be enabled by setting the - iceberg.merge_manifests_on_writesession property to- false. (#14822)
- Improve performance of - DROP TABLE. (#15981)
- Improve performance of reading position delete files with ORC data (#15969). 
- Improve performance of reading decimal columns from Parquet files. (#15713) 
- Improve performance of reading numeric types from Parquet files. (#15850) 
- Improve performance of reading string types from Parquet files. (#15897, #15923) 
- Improve performance of reading timestamp and boolean types from Parquet files. (#15954) 
- Prevent creating a table when the specified schema does not exist. (#15779) 
- Fix query failure when reading Parquet files written by Apache Impala. (#15942) 
- Fix listing relations failure when a Glue table has no table type set. (#15909) 
- Fix failure when encountering access denied exceptions while listing materialized views in the Glue metastore. (#15893) 
Kudu connector#
- Fix authentication failure when Kerberos tickets expire. (#14372) 
Memory connector#
- Fix potential failure when reading table column metadata with concurrent - CREATE TABLEor- DROP TABLEoperations. (#16062)
MongoDB connector#
- Add support for changing column types. (#15515) 
MySQL connector#
- Fix potential failure when - zeroDateTimeBehavioris set to- convertToNull. (#16027)