Closed martint closed 3 years ago
JDBC
---
* Add `externalAuthenticationTokenCache=MEMORY` property so Oauth2 credentials are cached in memory. Thanks to this user can avoid unnecessary authentication flow. ({issue}`7309`)
Kafka
---
* Add support for SSL security protocol. ({issue}`6929`
General:
* Fix join spill deadlock. ({issue}`7455`)
SPI:
* Require that ``ConnectorMaterializedViewDefinition`` provides a view owner. ({issue}`7489`)
Hive
* Fix incorrect results when non-lowercase field dereference is pushed into the ORC reader,
if ORC file schema has nested fields with a different case. ({issue}`7350`)
SQL Server connector
* Fix query failure when snapshot isolation (`ALLOW_SNAPSHOT_ISOLATION`) is disabled in target SQL Server database, but
but `READ_COMMITTED_SNAPSHOT` is still enabled. ({issue}`7548`)
General
* improve performance of `ORDER BY … LIMIT` queries over a `LEFT JOIN`. ({issue}`7028`)
General
* Reduce coordinator network overhead when scheduling queries. ({issue}`7351`)
JDBC connectors
* Improve metadata caching hit rate by sharing cache entries between different session users. ({issue}`7039`)
Hive
* Allow reading from ORC ACID transactional tables when `_orc_acid_version` metadata file is missing. ({issue}`7579`)
General
* Improve planning time for queries with large `IN` predicates. ({issue}`7556`)
PostgreSQL
* Cancel PostgreSQL remote query on when Trino query is cancelled. ({issue}`7306`)
BigQuery
* Improve performance for listing tables when case insensitive matching (`bigquery.case-insensitive-name-matching`) is enabled. ({issue}`7628`)
General
* Fix invalid query result for queries with full join which has scalar (left or right) input ({issue}`7629`)
BigQuery
* Add support for `CREATE SCHEMA` and `DROP SCHEMA` statements. ({issue}`7543`)
Cassandra
* Fix `NullPointerException` when reading an empty timestamp value. ({issue}`7433`)
SPI
* Add `Connector#getMaterializedViewPropertyManager` for specifying materialized view properties ({issue}`7615`)
General
* Introduce `information_schema.materialized_view_properties` table for listing available materialized view properties. ({issue}`7615`)
Hive
* Allow specifying Azure ADL connection proxy via `hive.azure.adl-proxy-host` config property. ({issue}`7509`)
General
* Introduce planning time limit which can be specified using `query.max-planning-time` config property ({issue}`7213`)
* Improve cancellation of queries during planning phase ({issue}`7213`)
General
* Improve performance of queries with predicates on boolean columns ({issue}`7263`)
General
* Add dedicated access control for creating and dropping materialized views. ({issue}`7645`)
SPI
* Add `ConnectorAccessControl#checkCanCreateMaterializedView` and
`ConnectorAccessControl#checkCanDropMaterializedView` for authorizing
creation and removal of materialized views. ({issue}`7645`)
General
* Improve performance of queries that contain join on `VARCHAR` keys of different length. ({issue}`7644`)
MongoDB
* Fix handling of non-lowercase MongoDB views. ({issue}`7491`)
https://github.com/trinodb/trino/issues/7491, https://github.com/trinodb/trino/pull/7546
Iceberg:
* Fix querying materialized views that were created using session catalog and schema. ({issue}`7711`)
SPI:
* Allow for materialized view to return storage table in different catalog and schema. ({issue}`7638`)
* Add support for {doc}`/sql/match-recognize`. ({issue}`6111`)
* Add {func}`soundex` function. ({issue}`4022`)
* Iceberg Connector:
- Show Iceberg tables created by other engines in ``SHOW TABLES`` output. ({issue}`1592`)
General
* Improve performance of queries with `late_materialization` enabled. ({issue}`7695`)
Hive, Iceberg
* Improve performance when reading dictionary-encoded Parquet files. ({issue}`7754`)
SQL Server
* Fix reading `date` values before 1583-10-14. ({issue}`7634`)
PostgreSQL
* Discontinue support for PostgreSQL 9.5.
General
* Add configuration for the query info sent to clients. This allows clients to be directed to a different location for information about their query. This is set using the `query.info-url-template` property . ({issue}`7678`)
SPI
* Add `ConnectorAccessControl#checkCanRefreshMaterializedView` for authorizing
refresh of materialized views. ({issue}`7707`)
File based access control
* Materialized views require `UPDATE` privilege to be refreshed. ({issue}`7707`)
General
* Add dedicated access control for refreshing materialized views.
Insert privilege on storage table is no longer required. ({issue}`7707`)
MySQL
* Exclude an internal `sys` schema from schema listings. ({issue}`6337`)
* Fix failure when quantified comparison expressions contain scalar subqueries. ({issue}`7792`)
# Iceberg Connector
* Improve query planning through table metadata caching. ({issue}`7336`)
* Fix bug when providing multiple scope values for `http-server.authentication.oauth2.scopes`. ({issue}`7706`)
- Fix bug when providing multiple scope values for
http-server.authentication.oauth2.scopes
. ({issue}7706
)
@kokosing, what's the bug? Is it an authentication failure? Incorrect authentication?
what's the bug? Is it an authentication failure? Incorrect authentication?
It was causing authentication failure due the misconfiguration as scopes in OAuth2 are separate with space. We used to use ,
and so it was considered as single scope. See:
com.github.scribejava.core.model.OAuth2AccessTokenErrorResponse: {"error":"invalid_scope","error_description":"The requested scope is invalid, unknown, or malformed. The OAuth 2.0 Client is not allowed to request scope 'openid,offline'."}
at com.github.scribejava.core.extractors.OAuth2AccessTokenJsonExtractor.generateError(OAuth2AccessTokenJsonExtractor.java:72)
at com.github.scribejava.core.extractors.OAuth2AccessTokenJsonExtractor.extract(OAuth2AccessTokenJsonExtractor.java:40)
at com.github.scribejava.core.extractors.OAuth2AccessTokenJsonExtractor.extract(OAuth2AccessTokenJsonExtractor.java:18)
at com.github.scribejava.core.oauth.OAuth20Service.sendAccessTokenRequestSync(OAuth20Service.java:53)
at com.github.scribejava.core.oauth.OAuth20Service.getAccessTokenClientCredentialsGrant(OAuth20Service.java:288)
at io.trino.server.security.oauth2.TestDynamicCallbackOAuth2Service.testMultipleScopes(TestDynamicCallbackOAuth2Service.java:90)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:104)
at org.testng.internal.Invoker.invokeMethod(Invoker.java:645)
at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:851)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1177)
at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:129)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:112)
at org.testng.TestRunner.privateRun(TestRunner.java:756)
at org.testng.TestRunner.run(TestRunner.java:610)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:387)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:382)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:340)
at org.testng.SuiteRunner.run(SuiteRunner.java:289)
Ashhar Hasan
Dain Sundstrom
David Phillips
Grzegorz Kokosiński
Karol Sobczak
Martin Traverso
Piotr Findeisen
Yuya Ebihara
Łukasz Osipiuk