Release 319 (22 Sep 2019)#

General#

  • Fix planning failure for queries involving UNION and DISTINCT aggregates. (#1510)

  • Fix excessive runtime when parsing expressions involving CASE. (#1407)

  • Fix fragment output size in EXPLAIN ANALYZE output. (#1345)

  • Fix a rare failure when running EXPLAIN ANALYZE on a query containing window functions. (#1401)

  • Fix failure when querying /v1/resourceGroupState endpoint for non-existing resource group. (#1368)

  • Fix incorrect results when reading information_schema.table_privileges with an equality predicate on table_name but without a predicate on table_schema. (#1534)

  • Fix planning failure due to coercion handling for correlated subqueries. (#1453)

  • Improve performance of queries against information_schema tables. (#1329)

  • Reduce metadata querying during planning. (#1308, #1455)

  • Improve performance of certain queries involving coercions and complex expressions in JOIN conditions. (#1390)

  • Include cost estimates in output of EXPLAIN (TYPE IO). (#806)

  • Improve support for correlated subqueries involving ORDER BY or LIMIT. (#1415)

  • Improve performance of certain JOIN queries when automatic join ordering is enabled. (#1431)

  • Allow setting the default session catalog and schema via the sql.default-catalog and sql.default-schema configuration properties. (#1524)

  • Add support for IGNORE NULLS for window functions. (#1244)

  • Add support for INNER and OUTER joins involving UNNEST. (#1522)

  • Rename legacy and flat scheduler policies to uniform and topology respectively. These can be configured via the node-scheduler.policy configuration property. (#10491)

  • Add file network topology provider which can be configured via the node-scheduler.network-topology.type configuration property. (#1500)

  • Add support for SphericalGeography to ST_Length(). (#1551)

Security#

  • Allow configuring read-only access in System access control. (#1153)

  • Add missing checks for schema create, rename, and drop in file-based SystemAccessControl. (#1153)

  • Allow authentication over HTTP for forwarded requests containing the X-Forwarded-Proto header. This is disabled by default, but can be enabled using the http-server.authentication.allow-forwarded-https configuration property. (#1442)

Web UI#

  • Fix rendering bug in Query Timeline resulting in inconsistency of presented information after query finishes. (#1371)

  • Show total memory in Query Timeline instead of user memory. (#1371)

CLI#

  • Add --insecure option to skip validation of server certificates for debugging. (#1484)

Hive connector#

  • Fix reading from information_schema, as well as SHOW SCHEMAS, SHOW TABLES, and SHOW COLUMNS when connecting to a Hive 3.x metastore that contains an information_schema schema. (#1192)

  • Improve performance when reading data from GCS. (#1443)

  • Allow accessing tables in Glue metastore that do not have a table type. (#1343)

  • Add support for Azure Data Lake (adl) file system. (#1499)

  • Allow using custom S3 file systems by relying on the default Hadoop configuration by specifying HADOOP_DEFAULT for the hive.s3-file-system-type configuration property. (#1397)

  • Add support for instance credentials for the Glue metastore via the hive.metastore.glue.use-instance-credentials configuration property. (#1363)

  • Add support for custom credentials providers for the Glue metastore via the hive.metastore.glue.aws-credentials-provider configuration property. (#1363)

  • Do not require setting the hive.metastore-refresh-interval configuration property when enabling metastore caching. (#1473)

  • Add textfile_field_separator and textfile_field_separator_escape table properties to support custom field separators for TEXTFILE format tables. (#1439)

  • Add $file_size and $file_modified_time hidden columns. (#1428)

  • The hive.metastore-timeout configuration property is now accepted only when using the Thrift metastore. Previously, it was accepted for other metastore type, but was ignored. (#1346)

  • Disallow reads from transactional tables. Previously, reads would appear to work, but would not return any data. (#1218)

  • Disallow writes to transactional tables. Previously, writes would appear to work, but the data would be written incorrectly. (#1218)