Release 406 (25 Jan 2023)#

General#

  • Add support for exchange spooling on HDFS when fault-tolerant execution is enabled. (#15160)

  • Add support for CHECK constraints in an INSERT statement. (#14964)

  • Improve planner estimates for queries containing outer joins over a subquery involving ORDER BY and LIMIT. (#15428)

  • Improve accuracy of memory usage reporting for table scans. (#15711)

  • Improve performance of queries parsing date values in ISO 8601 format. (#15548)

  • Improve performance of queries with selective joins. (#15569)

  • Remove legacy-phased execution scheduler as an option for the query.execution-policy configuration property. (#15657)

  • Fix failure when WHERE or JOIN clauses contain a LIKE expression with a non-constant pattern or escape. (#15629)

  • Fix inaccurate planner estimates for queries with filters on columns without statistics. (#15642)

  • Fix queries with outer joins failing when fault-tolerant execution is enabled. (#15608)

  • Fix potential query failure when using MATCH_RECOGNIZE. (#15461)

  • Fix query failure when using group-based access control with column masks or row filters. (#15583)

  • Fix potential hang during shutdown. (#15675)

  • Fix incorrect results when referencing a field resulting from the application of a column mask expression that produces a row type. (#15659)

  • Fix incorrect application of column masks when a mask expression references a different column in the underlying table. (#15680)

BigQuery connector#

Cassandra connector#

  • Fix incorrect results when the Cassandra list, map, or set types contain user-defined types. (#15771)

Delta Lake connector#

  • Reduce latency for INSERT queries on unpartitioned tables. (#15708)

  • Improve performance of reading Parquet files. (#15498)

  • Improve memory accounting of the Parquet reader. (#15554)

  • Improve performance of queries with filters or projections on low-cardinality string columns stored in Parquet files. (#15269)

  • Fix reading more data than necessary from Parquet files for queries with filters. (#15552)

  • Fix potential query failure when writing to Parquet from a table with an INTEGER range on a BIGINT column. (#15496)

  • Fix query failure due to missing null counts in Parquet column indexes. (#15706)

Hive connector#

  • Add support for table redirections to catalogs using the Hudi connector. (#14750)

  • Reduce latency for INSERT queries on unpartitioned tables. (#15708)

  • Improve performance of caching. (#13243)

  • Improve performance of reading Parquet files. (#15498)

  • Improve memory accounting of the Parquet reader. (#15554)

  • Improve performance of queries with filters or projections on low-cardinality string columns stored in Parquet files. (#15269)

  • Improve performance of queries with filters when Bloom filter indexes are present in Parquet files. Use of Bloom filters from Parquet files can be disabled with the parquet.use-bloom-filter configuration property or the parquet_use_bloom_filter session property. (#14428)

  • Allow coercion between Hive UNIONTYPE and Hive STRUCT-typed columns. (#15017)

  • Fix reading more data than necessary from Parquet files for queries with filters. (#15552)

  • Fix query failure due to missing null counts in Parquet column indexes. (#15706)

  • Fix incorrect schema already exists error caused by a client timeout when creating a new schema. (#15174)

Hudi connector#

  • Improve performance of reading Parquet files. (#15498)

  • Improve memory accounting of the Parquet reader. (#15554)

  • Improve performance of queries with filters or projections on low-cardinality string columns stored in Parquet files. (#15269)

  • Fix reading more data than necessary from Parquet files for queries with filters. (#15552)

  • Fix query failure due to missing null counts in Parquet column indexes. (#15706)

Iceberg connector#

  • Add support for changing column types. (#15515)

  • Add support for the JDBC catalog. (#9968)

  • Reduce latency for INSERT queries on unpartitioned tables. (#15708)

  • Improve performance of reading Parquet files. (#15498)

  • Improve memory accounting of the Parquet reader. (#15554)

  • Improve performance of queries with filters or projections on low-cardinality string columns stored in Parquet files. (#15269)

  • Fix reading more data than necessary from Parquet files for queries with filters. (#15552)

  • Fix query failure due to missing null counts in Parquet column indexes. (#15706)

  • Fix query failure when a subquery contains time travel. (#15607)

  • Fix failure when reading columns that had their type changed from float to double by other query engines. (#15650)

  • Fix incorrect results when reading or writing NaN with real or double types on partitioned columns. (#15723)

MongoDB connector#

  • Fix schemas not being dropped when trying to drop schemas with the mongodb.case-insensitive-name-matching configuration property enabled. (#15716)

PostgreSQL connector#

  • Add support for changing column types. (#15515)

SPI#

  • Remove the getDeleteRowIdColumnHandle(), beginDelete(), finishDelete(), getUpdateRowIdColumnHandle(), beginUpdate(), and finishUpdate() methods from ConnectorMetadata. (#15161)

  • Remove the UpdatablePageSource interface. (#15161)

  • Remove support for multiple masks on a single column. (#15680)