Release 346 (10 Nov 2020)#
General#
Add support for
RANGE BETWEEN <value> PRECEDING AND <value> FOLLOWING
window frames. (#609)Add support for window frames based on
GROUPS
. (#5713)Add support for
extract()
withTIMEZONE_HOUR
andTIMEZONE_MINUTE
fortime with time zone
values. (#5668)Add SQL syntax for
GRANT
andREVOKE
on schema. This is not yet used by any connector. (#4396)Add
ALTER TABLE ... SET AUTHORIZATION
syntax to allow changing the table owner. (#5717)Make
EXPLAIN
more readable for queries containingtimestamp
ortimestamp with time zone
constants. (#5683)Improve performance for queries with inequality conditions. (#2674)
Improve performance of queries with uncorrelated
IN
clauses. (#5582)Use consistent NaN behavior for
least()
,greatest()
,array_min()
,array_max()
,min()
,max()
,min_by()
, andmax_by()
. NaN is only returned when it is the only value (except for null which are ignored for aggregation functions). (#5851)Restore previous null handling for
least()
andgreatest()
. (#5787)Restore previous null handling for
array_min()
andarray_max()
. (#5787)Remove configuration properties
arrayagg.implementation
,multimapagg.implementation
, andhistogram.implementation
. (#4581)Fix incorrect handling of negative offsets for the
time with time zone
type. (#5696)Fix incorrect result when casting
time(p)
totimestamp(p)
for precisions higher than 6. (#5736)Fix incorrect query results when comparing a
timestamp
column with atimestamp with time zone
constant. (#5685)Fix improper table alias visibility for queries that select all fields. (#5660)
Fix failure when query parameter appears in a lambda expression. (#5640)
Fix failure for queries containing
DISTINCT *
and fully-qualified column names in theORDER BY
clause. (#5647)Fix planning failure for certain queries involving
INNER JOIN
,GROUP BY
and correlated subqueries. (#5846)Fix recording of query completion event when query is aborted early. (#5815)
Fix exported JMX name for
QueryManager
. (#5702)Fix failure when
approx_distinct()
is used with high precisiontimestamp(p)
/timestamp(p) with time zone
/time(p) with time zone
data types. (#5392)
Web UI#
Fix «Capture Snapshot» button on the Worker page. (#5759)
JDBC driver#
Support number accessor methods like
ResultSet.getLong()
orResultSet.getDouble()
ondecimal
values, as well aschar
orvarchar
values that can be unambiguously interpreted as numbers. (#5509)Add
SSLVerification
JDBC connection parameter that allows configuring SSL verification. (#5610)Remove legacy
useSessionTimeZone
JDBC connection parameter. (#4521)Implement
ResultSet.getRow()
. (#5769)
Server RPM#
Remove leftover empty directories after RPM uninstall. (#5782)
BigQuery connector#
Fix issue when query could return invalid results if some column references were pruned out during query optimization. (#5618)
Cassandra connector#
Improve performance of
INSERT
queries with batch statement. The batch size can be configured via thecassandra.batch-size
configuration property. (#5047)
Elasticsearch connector#
Fix failure when index mappings do not contain a
properties
section. (#5807)
Hive connector#
Add support for
ALTER TABLE ... SET AUTHORIZATION
SQL syntax to change the table owner. (#5717)Add support for writing timestamps with microsecond or nanosecond precision, in addition to milliseconds. (#5283)
Export JMX statistics for Glue metastore client request metrics. (#5693)
Collect column statistics during
ANALYZE
and when data is inserted to table for columns oftimestamp(p)
when precision is greater than 3. (#5392)Improve query performance by adding support for dynamic bucket pruning. (#5634)
Remove deprecated
parquet.fail-on-corrupted-statistics
(previously known ashive.parquet.fail-on-corrupted-statistics
). A new configuration property,parquet.ignore-statistics
, can be used to deal with Parquet files with incorrect metadata. (#3077)Do not write min/max statistics for
timestamp
columns. (#5858)If multiple metastore URIs are defined via
hive.metastore.uri
, prefer connecting to one which was seen operational most recently. This prevents query failures when one or more metastores are misbehaving. (#5795)Fix Hive view access when catalog name is other than
hive
. (#5785)Fix failure when the declared length of a
varchar(n)
column in the partition schema differs from the table schema. (#5484)Fix Glue metastore pushdown for complex expressions. (#5698)
Iceberg connector#
Add support for materialized views. (#4832)
Remove deprecated
parquet.fail-on-corrupted-statistics
(previously known ashive.parquet.fail-on-corrupted-statistics
). A new configuration property,parquet.ignore-statistics
, can be used to deal with Parquet files with incorrect metadata. (#3077)
Kafka connector#
Fix incorrect column comment. (#5751)
Kudu connector#
Improve performance of queries having only
LIMIT
clause. (#3691)
MySQL connector#
Improve performance for queries containing a predicate on a
varbinary
column. (#5672)
Oracle connector#
Add support for setting column comments. (#5399)
Allow enabling remarks reporting via
oracle.remarks-reporting.enabled
configuration property. (#5720)
PostgreSQL connector#
Improve performance of queries comparing a
timestamp
column with atimestamp with time zone
constants fortimestamp with time zone
precision higher than 3. (#5543)
Other connectors#
Improve performance of queries with
DISTINCT
orLIMIT
, or withGROUP BY
and no aggregate functions andLIMIT
, when the computation can be pushed down to the underlying database for the PostgreSQL, MySQL, Oracle, Redshift and SQL Server connectors. (#5522)