Release 344 (9 Oct 2020)#

General Changes#

  • Add murmur3() function. (#5054)

  • Add from_unixtime_nanos() function. (#5046)

  • Add T-Digest type and functions. (#5158)

  • Improve performance and latency of queries leveraging dynamic filters. (#5081, #5340)

  • Add dynamic-filtering.service-thread-count config property to specify number of threads used for processing dynamic filters on coordinator. (#5341)

  • Extend Secrets environment variable substitution to allow multiple replacements in a single configuration property. (#4345)

  • Remove the fast-inequality-joins configuration property. This feature is always enabled. (#5375)

  • Use timestamp(3) with time zone rather than timestamp(3) for the queries, transactions, and tasks tables in system.runtime. (#5464)

  • Improve performance and accuracy of approx_percentile(). (#5158)

  • Improve performance of certain cross join queries. (#5276)

  • Prevent potential query deadlock when query runs out of memory. (#5289)

  • Fix failure due to rounding error when casting between two timestamp types with precision higher than 6. (#5310)

  • Fix failure due to rounding error when casting between two timestamp with time zone types with precision higher than 3. (#5371)

  • Fix column pruning for EXPLAIN ANALYZE. ({issue} 4760)

  • Fix incorrect timestamp values returned by the queries, transactions, and tasks tables in system.runtime. (#5462)

Security Changes#

Warning

The file-based system and catalog access controls have changed in ways that reduce or increase permissions. Please, read these release notes carefully.

  • Change file-based catalog access control from deny to allow when table, schema, or session property rules are not defined. (#5039)

  • Add missing table rule checks for table and view DDL in file-based system access control. (#5039)

  • Add missing schema rule checks for create schema in file-based system access control. (#5039)

  • Add session property rules to file-based system access control. (#5039)

  • Add catalog regex to table and schema rules in file-based system access control. (#5039)

  • Change create, rename, alter, and drop table in file-based system controls to only check for table ownership. (#5039)

  • Change file-based system access control to support files without catalog rules defined. In this case, all access to catalogs is allowed. (#5039)

  • Change file-based system and catalog access controls to only show catalogs, schemas, and tables a user has permissions on. (#5039)

  • Change file-based catalog access control to deny permissions inspection and manipulation. (#5039)

  • Add file-based group provider. (#5028)

Hive Connector Changes#

  • Add support for hive.security=allow-all, which allows to skip all authorization checks. (#5416)

  • Support Kerberos authentication for Hudi tables. (#5472)

  • Allow hiding Delta Lake tables from table listings such as SHOW TABLES or information_schema.tables, as these tables cannot be queried by the Hive connector. This be enabled using the hive.hide-delta-lake-tables configuration property. (#5430)

  • Improve query concurrency by listing data files more efficiently. (#5260)

  • Fix Parquet encoding for timestamps before 1970-01-01. (#5364)

Kafka Connector Changes#

  • Expose message timestamp via _timestamp internal column. (#4805)

  • Add predicate pushdown for _timestamp, _partition_offset and _partition_id columns. (#4805)

Phoenix Connector Changes#

  • Fix query failure when a column name in CREATE TABLE requires quoting. (#3601)

PostgreSQL Connector Changes#

  • Add support for setting a column comment. (#5307)

  • Add support for variable-precision time type. (#5432)

  • Allow CREATE TABLE and CREATE TABLE AS with timestamp and timestamp with time zone with precision higher than 6. The resulting column will be declared with precision of 6, maximal supported by PostgreSQL. (#5432)

SQL Server Connector Changes#

  • Improve performance of queries with aggregations and WHERE clause. (#5327)