20.2. Release 0.213-e

Update 0.1

General Changes

  • Fix bug where the CLI throws a vague error Query gone(server restarted?) instead of actual Exception message.
  • Support prepared statements that are longer than 4K bytes.
  • Cost based optimization for partial aggregation that conditionally depending on cost redistributes data before partial aggregation.
  • Add security audit logging.
  • Add CloudWatch Agent compatible logger.
  • Add ANALYZE SQL command.
  • Improve planning and query performance for queries with TINYINT, SMALLINT and VARBINARY literals.
  • Fix issue where queries containing distributed ORDER BY and aggregation could sometimes fail to make progress when data was spilled.
  • Make top N row number optimization work in some cases when columns are pruned.
  • Add session property optimize-top-n-row-number and configuration property optimizer.optimize-top-n-row-number to toggle the top N row number optimization.
  • Split reporting of raw input data and processed input data for source operators.
  • Correctly report processed input data for source stages in EXPLAIN ANALYZE.
  • Don’t report raw input data for Values, Local Exchange and Local Merge Sort operators.
  • Add experimental support for Spill to Disk for OrderBy. The feature needs to be explicitly enabled.
  • Add experimental support for Spill to Disk for WindowOperator. The feature needs to be explicitly enabled.
  • Add Generic JDBC connector.
  • Print join enumeration stats in explain analyze.
  • Flip the default value of deprecated.legacy-char-to-varchar-coercion property to true, so that CHAR to VARCHAR implicit coersion is allowed (and not the opposite). This returns the code to the state from Presto version 0.206.
  • Fix memory leak for failed queries.

Security Changes

  • The LDAP properties internal-communication.authentication.ldap.user and internal-communication.authentication.ldap.password are no longer supported. If the LDAP authentication is enabled along with HTTPS for internal communication, then for successful communication between nodes you need to also enable SSL client certificate or Kerberos or JWT authentication.
  • Support refreshing of FileBasedAccessControl and FileBasedSystemAccessControl with an optional property security.refresh-period.
  • Support LDAP with anonymous bind disabled

Hive Connector Changes

  • Implement ROLE management support.
  • Allow partitions without files for bucketed tables (via hive.empty-bucketed-partitions.enabled).
  • Allow multiple files per bucket for bucketed tables (via hive.multi-file-bucketing.enabled). There must be one or more files per bucket. File names must match the Hive naming convention.
  • Allow reading incompletely bucketed tables with missing files (via hive.empty-bucketed-partitions.enabled).
  • Add support for Azure Blob Storage
  • Add support for Azure Azure Data Lake Storage (ADLS)
  • Add Hive metastore API recording tool for remote debugging purposes.
  • Support CSV table storage format.
  • Support Apache Ranger authorization (requires licence).
  • Support Apache Sentry authorization (requires licence).
  • Add support for column statistics in Glue.
  • Support predicate pushdown for DATE type with Parquet.
  • Support tables located in HDFS encryption zones managed with Hadoop KMS.
  • Fix query failure when querying partitioned Avro table with very long column type definition.
  • Support Avro tables with avro.schema.url in kerberized HDFS.

MySQL, PostgreSQL, Redshift, and SQL Server Changes

  • Support schemas, tables and columns with names that are upper-case or mixed-case.

Web UI Changes

  • Make Cumulative Memory usage reporting consistent on query list and query details pages.
  • Fix Live Plan UI for index joins.
  • Fix filtering in query list when sort order is changed.

Server RPM Changes

  • Fix parsing of node.properties in the init script when there are duplicate entries in the properties file.

Update 0.2

General Changes

  • The experimental timestamp is still not recommended to be used. It’s gradually being removed in preparation for a new implementation in the future. For any issues please contact Starburst Support.

Security Changes

  • Support complex expressions including subqueries in row filtering.

Hive Connector Changes

  • Capturing client ip and SQL query in Ranger audit.

Update 0.3

Security Changes

  • Add ldap.bind-dn and ldap.bind-password LDAP properties to allow LDAP authentication access LDAP server using service account.

Hive Connector Changes

  • Add hive.temporary-staging-directory-enabled configuration property and matching hive.temporary_staging_directory_enabled session property to control if temporary staging directory should be used (whenever possible) for write operations.
  • Add hive.temporary-staging-directory-location configuration property and matching hive.temporary_staging_directory_location session property to control the path of temporary staging directory for write operations. ${USER} placeholder can be used to select different location for each user.
  • Add hive.s3.upload-acl-type configuration property to specify the type of ACL to use while uploading files to S3.
  • Add textfile_field_separator and textfile_field_separator_escape table properties to control field separator and field separator characters for tables with TEXTFILE format.
  • Allow to create table with external_location property pointing to an empty S3 directory that was created from AWS web console.

Update 0.4

Security Changes

  • Fix column masking in Ranger.

Update 0.5

Hive Connector Changes

  • Add Glue support for private subnets.

Update 0.6

Security Changes

  • Add Ranger System Access Control to control the access to User Defined functions.
  • Add Ranger ranger.wild-card-resource-matching-for-row-filtering configuration property to enable resource fields wild card matching for row filtering.
  • Add Ranger ranger.wild-card-resource-matching-for-column-masking configuration property to enable resource fields wild card matching for column masking.

Hive Connector Changes

  • Fix Parquet predicate pushdown for SMALLINT and TINYINT types.
  • Add support for user impersonation when communicating with Hive Metastore.

MongoDB Connector

  • Fix queries involving joins or aggregations on ObjectId type.

Update 0.7

General Changes

  • Add JDBC-based Google BigQuery connector

Update 0.8

General Changes

  • Add Oracle compatibility functions

Update 0.9

Security Changes

  • Retry Kerberos communication in case of transient network issues.

General Changes

  • Disable Airlift’s “admin” servlet port, which was not used for anything in Presto.

Hive Connector Changes

  • Support Ranger Audit to kerberized Solr service.

Update 0.10

Security Changes

  • Make query result and cancellation URIs secure. Previously, an authenticated user could potentially steal the result data of any running query.

Update 0.11

General Changes

  • Fix Query is gone (server restarted?) error when query resource groups association fails.

Hive Connector Changes

  • Fix leaking Kerberos configuration from Ranger System Access Control to Hive connector.
  • Make order of evaluated Ranger policies be deterministic.

Update 0.12

General Changes

  • Fix resource group selection when selector uses regular expression variables.
  • Fix thread-safety bug in resource groups manager.
  • Support session property with comma or equality sign.
  • Support resource group selection based on client tags for enterprise ODBC and JDBC drivers.

Update 0.13

General Changes

  • Fix access control for functions in view.

Update 0.14

Hive Connector Changes

  • Configuring Ranger System Access Control with Ranger configuration.

Update 0.15

General Changes

  • Fix query failure when spilling is triggered during certain phases of query execution.
  • Improve performance of queries when spill is enabled but not triggered.
  • Fix blocking on memory when revocable memory is used.
  • Fix double memory accounting for aggregations when spilling is active.
  • Fix excessive CPU usage that can occur when spilling for window functions.
  • Fix spill files leaks in window and order by operator.

Update 0.16

Hive Connector Changes

  • Optimize sql-standard table access control.

MongoDB Connector

  • Fix queries involving joins or aggregations on row types containing ObjectId.