Release 0.218#

Warning

This release has the potential to produce incorrect results for three way joins where one of the joins is a FULL OUTER JOIN and one subquery of the FULL OUTER JOIN has a GROUP BY on the join key and some expression that could be evaluated to a constant. For details, please refer to #12577.

General Changes#

  • Fix failures in regular expression functions for certain inputs where the pattern contains word boundaries (e.g. \b).

  • Fix an issue that may cause a crash when using plugins that provide an event listener. (#11951)

  • Fix a memory leak that occurs when a query fails with a semantic or permission error.

  • Improve performance for queries with FULL OUTER JOIN where join keys have the :func:COALESCE function applied.

  • Improve cost based optimizer to make decisions based on estimated query peak memory.

  • Improve cost based optimizer for certain queries using ORDER BY.

  • Improve performance for queries with an OUTER JOIN followed by LIMIT.

  • Improve the error message for INSERT queries where columns do not match the target table.

  • Add support for using binary encoding for coordinator-to-worker communication. This feature is experimental, and it can be enabled with the experimental.internal-communication.binary-transport-enabled configuration property. Enabling this feature may help with coordinator scalability and reduces network, CPU, and memory usage on the coordinator.

  • Add ST_Area() for the SphericalGeography type.

  • Add a system table system.metadata.analyze_properties that shows the properties supported by the ANALYZE statement.

  • Add support for resolving key conflicts when using split_to_map().

  • Add support for role management (see CREATE ROLE). Client library version 0.218 is required to use SET ROLE. (#11645)

  • Add support for processing JSON protocol messages by generating bytecode on the coordinator. This feature is experimental, and it can be enabled with the experimental.json-serde-codegen-enabled configuration property.

Security Changes#

  • Change principal hostname to be configurable in Kerberos authenticator.

Hive Connector Changes#

  • Improve Parquet reader performance by reducing redundant footer reads.

  • Add support for skipping Glacier files in Amazon S3. This feature can be enabled by setting the hive.s3.skip-glacier-objects configuration property.

  • Add support for Parquet files written with Parquet v1.9+ that use DELTA_BINARY_PACKED encoding with the INT64 type.

  • Add support for dictionary filtering for Parquet v2 files that use RLE_DICTIONARY encoding.

Elasticsearch Connector Changes#

  • Add support for Search Guard in Elasticsearch connector. Please refer to Elasticsearch Connector for the relevant configuration properties.

MySQL Connector Changes#

  • Allow creating or renaming tables, and adding, renaming, or dropping columns.

PostgreSQL Connector Changes#

  • Allow creating or renaming tables, and adding, renaming, or dropping columns.

Redshift Connector Changes#

  • Allow creating or renaming tables, and adding, renaming, or dropping columns.

SQL Server Connector Changes#

  • Allow creating or renaming tables, and adding, renaming, or dropping columns.

SPI Changes#

  • Add Connector.getCapabilities() to allow connectors to individually opt-in to connector-specific functionality.