Release 0.198#
General#
- Perform semantic analysis before enqueuing queries. 
- Add support for selective aggregates ( - FILTER) with- DISTINCTargument qualifiers.
- Support - ESCAPEfor- LIKEpredicate in- SHOW SCHEMASand- SHOW TABLESqueries.
- Parse decimal literals (e.g. - 42.0) as- DECIMALby default. Previously, they were parsed as- DOUBLE. This behavior can be turned off via the- parse-decimal-literals-as-doubleconfig option or the- parse_decimal_literals_as_doublesession property.
- Fix - current_datefailure when the session time zone has a “gap” at- 1970-01-01 00:00:00. The time zone- America/Bahia_Banderasis one such example.
- Add variant of - sequence()function for- DATEwith an implicit one-day step increment.
- Increase the maximum number of arguments for the - zip()function from 4 to 5.
- Add - ST_IsValid(),- geometry_invalid_reason(),- simplify_geometry(), and- great_circle_distance()functions.
- Support - min()and- max()aggregation functions when the input type is unknown at query analysis time. In particular, this allows using the functions with- NULLliterals.
- Add configuration property - task.max-local-exchange-buffer-sizefor setting local exchange buffer size.
- Add trace token support to the scheduler and exchange HTTP clients. Each HTTP request sent by the scheduler and exchange HTTP clients will have a “trace token” (a unique ID) in their headers, which will be logged in the HTTP request logs. This information can be used to correlate the requests and responses during debugging. 
- Improve query performance when dynamic writer scaling is enabled. 
- Improve performance of - ST_Intersects().
- Improve query latency when tables are known to be empty during query planning. 
- Optimize - array_agg()to avoid excessive object overhead and native memory usage with G1 GC.
- Improve performance for high-cardinality aggregations with - DISTINCTargument qualifiers. This is an experimental optimization that can be activated by disabling the- use_mark_distinctsession property or the- optimizer.use-mark-distinctconfig option.
- Improve parallelism of queries that have an empty grouping set. 
- Improve performance of join queries involving the - ST_Distance()function.
Resource groups#
- Query Queues have been removed. Resource Groups are always enabled. The config property - experimental.resource-groups-enabledhas been removed.
- Change - WEIGHTED_FAIRscheduling policy to select oldest eligible sub group of groups where utilization and share are identical.
CLI#
- The - --enable-authenticationoption has been removed. Kerberos authentication is automatically enabled when- --krb5-remote-service-nameis specified.
- Kerberos authentication now requires HTTPS. 
Hive#
- Add support for using AWS Glue as the metastore. Enable it by setting the - hive.metastoreconfig property to- glue.
- Fix a bug in the ORC writer that will write incorrect data of type - VARCHARor- VARBINARYinto files.
JMX#
- Add wildcard character - *which allows querying several MBeans with a single query.
SPI#
- Add performance statistics to query plan in - QueryCompletedEvent.
- Remove - Page.getBlocks(). This call was rarely used and performed an expensive copy. Instead, use- Page.getBlock(channel)or the new helper- Page.appendColumn().
- Improve validation of - ArrayBlock,- MapBlock, and- RowBlockduring construction.