Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
104 commits
Select commit Hold shift + click to select a range
2133899
Upgrade toxiproxy docker container version
Laonel Sep 5, 2022
46e96b5
Leverage Optional.orElseThrow to increase code readability
findepi Aug 31, 2022
d21cb3b
Remove redundant else
findepi Sep 5, 2022
48e5b53
Move currentRequestStartNanos to UpdateResponseHandler
sopel39 Sep 5, 2022
33e4afe
Make sendUpdate lock free
sopel39 Sep 5, 2022
ebecf59
Inline method
Aug 31, 2022
3e28732
Simplify creation of join operator
Aug 22, 2022
c155a3e
Remove trailing slash when building metadata location in Iceberg
ebyhr Sep 5, 2022
379154b
Use ImmutableList.Builder in CheckpointSchemaManager
ebyhr Jul 25, 2022
4852d25
Enforce writeStatsAsJson and writeStatsAsStruct option in Delta Lake
ebyhr Jul 27, 2022
95849b0
Support all Trino Security Access Control modes in Delta lake Connector
mdesmet Apr 4, 2022
193deb7
Randomly distribute spooling directories across buckets
linzebing Sep 5, 2022
e8d8fbd
Bump calcite-core to 1.21.0.152
findinpath Sep 6, 2022
8d41253
Update pull request template
colebow Aug 31, 2022
88f41de
Remove redundant keywords
Sep 6, 2022
7f07c54
Fix name of like function for connector expressions
martint Sep 1, 2022
ce608b7
Improve type mapping documentation for Druid connector
Aug 22, 2022
93881a8
Clarify connector support for SQL MERGE
Sep 2, 2022
28a6941
Add ORC UuidColumnReader
lukasz-stec Aug 2, 2022
3f3ee25
Migrate interval year-month literal tests to new assertions
martint Sep 2, 2022
0f74f69
Migrate interval day-time literal tests to new assertions
martint Sep 2, 2022
df4f4c8
Remove unnecessary method
martint Sep 6, 2022
c72e3ba
Add Optional predicate to ParquetReader constructor used in Iceberg
charlesjmorgan Aug 23, 2022
98bd853
Fix CanonicalizeExpressions processing of date() argument
findepi Sep 6, 2022
d5da6a5
Put getter before setter
findepi Sep 6, 2022
da150ae
Analyze Iceberg tables
findepi May 9, 2022
52a1797
Remove deprecated statistics collection ConnectorMetadata methods
findepi Sep 6, 2022
471b114
Remove redundant cast from TestingClickHouseServer
tangjiangling Sep 7, 2022
c44198c
Add missing final modifier in CassandraServer
tangjiangling Sep 7, 2022
7fc2d62
Remove unused throws Exception clauses
tangjiangling Sep 7, 2022
f6cad5e
Remove usage of deprecated ContainerState#getContainerIpAddress
tangjiangling Sep 7, 2022
8259b5c
Reveal enforced constraint in EXPLAIN for Iceberg table scan
findepi Sep 6, 2022
ae4afb0
Remove unnecessary null check
arhimondr Sep 6, 2022
04de92c
Refactor DriverSplitRunnerFactory
arhimondr Aug 16, 2022
24290a0
Transition task to FINISHED after noMoreOperators is set
arhimondr Aug 16, 2022
e5f6e10
Update task holder before starting task execution
arhimondr Aug 16, 2022
df1dde1
Add recording distribution of outputBuffer utilization
Aug 2, 2022
77f433a
Convert ClientSession to follow builder pattern
akshayrai Aug 25, 2022
414573f
Simplify TestDeltaLakeRenameToWithGlueMetastore
ebyhr Sep 7, 2022
36db5ed
Simplify Delta Lake query runner
ebyhr Sep 6, 2022
4ae22dd
Add Trino 395 release notes
colebow Sep 2, 2022
69827b3
[maven-release-plugin] prepare release 395
martint Sep 8, 2022
2600183
[maven-release-plugin] prepare for next development iteration
martint Sep 8, 2022
d33ab04
Truncate month names in release note headers
colebow Sep 6, 2022
00951cf
Simplify test case
martint Sep 6, 2022
52dfb7f
Rename DefLevelIterables to DefLevelWriterProviders
raunaqmorarka Aug 17, 2022
44178f7
Refactor DefLevelWriterProviders to improve optimized parquet writer
raunaqmorarka Aug 17, 2022
1a548fc
Make checkCanExecuteFunction checks future proof
findepi Sep 2, 2022
7426d9c
Add access control for views with table functions
findepi Aug 31, 2022
809e3df
Extract method to get table location in Iceberg product test
ebyhr Sep 8, 2022
c4434ed
Add test for write.metadata.compression-codec property in Iceberg
ebyhr Sep 8, 2022
134d14b
use correct identity to initiate delete in HDFS
wliufle Aug 25, 2022
a920f62
Update link to issue in release notes
martint Sep 8, 2022
9972866
Add hasNonNullValue support to ArrayBlockBuilder
lukasz-stec Sep 2, 2022
a4fa987
Add public getRawSlice and getRawSliceOffset to VariableWidthBlock
lukasz-stec Aug 30, 2022
1f260bc
Improve SlicePositionsAppender performance
lukasz-stec Sep 2, 2022
01b31e8
Extract method to prepare Pinot testing tables
ntantri Sep 6, 2022
1c51576
Extend BaseConnectorSmokeTest in Pinot tests
ntantri Sep 6, 2022
597b747
Extract quote method to BigQueryUtil
ebyhr Aug 23, 2022
d782bb6
Support commenting on table and column in BigQuery
ebyhr Aug 23, 2022
09f6d19
Update Antlr to 4.11.1
martint Jul 20, 2022
901bf5b
Update jdbi to 3.32.0
martint Jul 21, 2022
60f3f03
Make ExpressionAssert evaluation lazy
martint Sep 2, 2022
ecb329d
Run expresion assertions via constant folder and engine
martint Sep 3, 2022
337115f
Add operator() and function() to QueryAssertions
martint Sep 6, 2022
f1fba78
Add isNull(type) shorthand to expression assertion
martint Sep 8, 2022
8e39038
Migrate TestArrayFunctions to new assertions
martint Sep 3, 2022
de4bc29
Migrate TestConditions to new asserts
martint Sep 4, 2022
ecfd95e
Migrate TestArrayContainsSequence to new assertions
martint Sep 6, 2022
65b3d7a
Migrate TestArrayExceptFunction to new assertions
martint Sep 6, 2022
66a3c3d
Migrate TestArrayFilterFunction to new assertions
martint Sep 6, 2022
5e45481
Migrate TestArrayMatchFunctions to new assertions
martint Sep 6, 2022
daa6631
Use operator assertions in TestColor
martint Sep 6, 2022
1ffb1bf
Migrate TestDataSizeFunctions to new assertions
martint Sep 6, 2022
e6a3682
Drop useless test
findinpath Aug 31, 2022
0a5d02a
Ensure test table contains multiple active files
findinpath Aug 31, 2022
7cfc5ac
Increase default domain-compaction-threshold for phoenix
raunaqmorarka Sep 7, 2022
82bdb9b
Increase default domain-compaction-threshold for clickhouse
raunaqmorarka Sep 7, 2022
f25bd33
Refactor jdbc domain-compaction-threshold documentation
raunaqmorarka Sep 7, 2022
5a22256
Change sligthly the exception message
findinpath Sep 9, 2022
eba7196
Disallow writes on materialized views
findinpath Sep 8, 2022
6fb6abc
Reveal @Experimental in javadoc
findepi Sep 7, 2022
4591a73
Fix "No bucket node map" failure for Iceberg inserts
electrum Sep 8, 2022
c946407
Unbind MetastoreTypeConfig in Hive tests
findepi Sep 8, 2022
c3dc5ac
Deliver RemoteSplit exactly once
arhimondr Sep 6, 2022
0252ccb
Ensure noMoreInputs is not called too early
arhimondr Sep 2, 2022
17d6d65
Allow only single QueryOutputInfo listener
arhimondr Sep 6, 2022
4d235b0
Ensure query results inputs are delivered exactly once
arhimondr Sep 6, 2022
622f843
Do not allow exchange inputs to be added more than once
arhimondr Sep 2, 2022
c6d246e
Verify table just after adding column in testAddColumn
ebyhr Sep 8, 2022
8fa251e
Make StandardColumnMappings::longTimestampReadFunction public
tangjiangling Feb 23, 2022
d1e04e9
Rename TestClickHouseTypeMapping to BaseClickHouseTypeMapping
tangjiangling Feb 26, 2022
a052b8f
Make TestClickHouseTypeMapping extend BaseClickHouseTypeMapping
tangjiangling Aug 14, 2022
78023ac
Rename method addTimestampRoundTrips to timestampTest
tangjiangling Aug 14, 2022
5531df9
Introduce `TrinoToClickHouseWriteChecker`
tangjiangling Aug 8, 2022
0812156
Use `TrinoToClickHouseWriteChecker` to validate UInt8
tangjiangling Aug 14, 2022
d88f106
Use `TrinoToClickHouseWriteChecker` to validate UInt16
tangjiangling Aug 14, 2022
13d3fb6
Use `TrinoToClickHouseWriteChecker` to validate UInt32
tangjiangling Aug 14, 2022
f7e22de
Use `TrinoToClickHouseWriteChecker` to validate UInt64
tangjiangling Aug 14, 2022
931c7f6
Make ClickHouse Date min/max/unsupportedDate tests customizable
tangjiangling Aug 14, 2022
8ef8e55
Extract errorMessageForDateYearOfEraPredicate method
tangjiangling Aug 14, 2022
2cd6941
Use `TrinoToClickHouseWriteChecker` to validate Date
tangjiangling Aug 14, 2022
5073408
Make ClickHouse DateTime min/max/unsupportedDateTime tests customizable
tangjiangling Aug 14, 2022
a02bb52
Use `TrinoToClickHouseWriteChecker` to validate DateTime
tangjiangling Aug 14, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
36 changes: 7 additions & 29 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,42 +1,20 @@
<!-- Thank you for submitting a pull request! Find more information in our development guide at https://github.com/trinodb/trino/blob/master/.github/DEVELOPMENT.md and contact us on #dev in Slack. -->

<!-- Provide an overview of the PR for maintainers and reviewers. -->
## Description

<!-- Elaborate beyond the title of the PR as necessary to help the reviewers and maintainers.-->

<!-- Answer the following questions to help reviewers and maintainers
understand this PR's scope at a glance:
-->

> Is this change a fix, improvement, new feature, refactoring, or other?

> Is this a change to the core query engine, a connector, client library, or the SPI interfaces? (be specific)

> How would you describe this change to a non-technical end user or system administrator?

## Related issues, pull requests, and links

<!-- List any issues fixed by this PR, and provide links to other related PRs, upstream release notes, and other useful resources. For example:
* Fixes #issuenumber
* Related documentation in #issuenumber
* [Some release notes](http://usefulinfo.example.com)
-->

<!-- The following sections are filled in by the maintainer with input from the contributor:
Use :white_check_mark: or (x) to signal selection.
-->
<!-- Provide a user-friendly explanation, keep it brief if it isn't user-visible. -->
## Non-technical explanation

## Documentation

( ) No documentation is needed.
( ) Sufficient documentation is included in this PR.
( ) Documentation PR is available with #prnumber.
( ) Documentation issue #issuenumber is filed, and can be handled later.

<!-- Mark the appropriate option with an (x). Propose a release note if you can. -->
## Release notes

( ) No release notes entries required.
( ) Release notes entries required with the following suggested text:
( ) This is not user-visible and no release notes are required.
( ) Release notes are required, please propose a release note for me.
( ) Release notes are required, with the following suggested text:

```markdown
# Section
Expand Down
2 changes: 1 addition & 1 deletion client/trino-cli/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<parent>
<groupId>io.trino</groupId>
<artifactId>trino-root</artifactId>
<version>395-SNAPSHOT</version>
<version>396-SNAPSHOT</version>
<relativePath>../../pom.xml</relativePath>
</parent>

Expand Down
41 changes: 19 additions & 22 deletions client/trino-cli/src/main/java/io/trino/cli/ClientOptions.java
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,6 @@
import static com.google.common.base.Preconditions.checkArgument;
import static com.google.common.base.Strings.nullToEmpty;
import static io.trino.client.KerberosUtil.defaultCredentialCachePath;
import static java.util.Collections.emptyMap;
import static java.util.Locale.ENGLISH;
import static java.util.Objects.requireNonNull;
import static picocli.CommandLine.Option;
Expand Down Expand Up @@ -219,27 +218,25 @@ public String getKeyMap()

public ClientSession toClientSession()
{
return new ClientSession(
parseServer(server),
user,
sessionUser,
source,
Optional.ofNullable(traceToken),
parseClientTags(nullToEmpty(clientTags)),
clientInfo,
catalog,
schema,
null,
timeZone,
Locale.getDefault(),
toResourceEstimates(resourceEstimates),
toProperties(sessionProperties),
emptyMap(),
emptyMap(),
toExtraCredentials(extraCredentials),
null,
clientRequestTimeout,
disableCompression);
return ClientSession.builder()
.server(parseServer(server))
.principal(user)
.user(sessionUser)
.source(source)
.traceToken(Optional.ofNullable(traceToken))
.clientTags(parseClientTags(nullToEmpty(clientTags)))
.clientInfo(clientInfo)
.catalog(catalog)
.schema(schema)
.timeZone(timeZone)
.locale(Locale.getDefault())
.resourceEstimates(toResourceEstimates(resourceEstimates))
.properties(toProperties(sessionProperties))
.credentials(toExtraCredentials(extraCredentials))
.transactionId(null)
.clientRequestTimeout(clientRequestTimeout)
.compressionDisabled(disableCompression)
.build();
}

public static URI parseServer(String server)
Expand Down
14 changes: 7 additions & 7 deletions client/trino-cli/src/main/java/io/trino/cli/Console.java
Original file line number Diff line number Diff line change
Expand Up @@ -366,8 +366,8 @@ private static boolean process(
// update catalog and schema if present
if (query.getSetCatalog().isPresent() || query.getSetSchema().isPresent()) {
session = ClientSession.builder(session)
.withCatalog(query.getSetCatalog().orElse(session.getCatalog()))
.withSchema(query.getSetSchema().orElse(session.getSchema()))
.catalog(query.getSetCatalog().orElse(session.getCatalog()))
.schema(query.getSetSchema().orElse(session.getSchema()))
.build();
}

Expand All @@ -379,35 +379,35 @@ private static boolean process(
ClientSession.Builder builder = ClientSession.builder(session);

if (query.getStartedTransactionId() != null) {
builder = builder.withTransactionId(query.getStartedTransactionId());
builder = builder.transactionId(query.getStartedTransactionId());
}

// update path if present
if (query.getSetPath().isPresent()) {
builder = builder.withPath(query.getSetPath().get());
builder = builder.path(query.getSetPath().get());
}

// update session properties if present
if (!query.getSetSessionProperties().isEmpty() || !query.getResetSessionProperties().isEmpty()) {
Map<String, String> sessionProperties = new HashMap<>(session.getProperties());
sessionProperties.putAll(query.getSetSessionProperties());
sessionProperties.keySet().removeAll(query.getResetSessionProperties());
builder = builder.withProperties(sessionProperties);
builder = builder.properties(sessionProperties);
}

// update session roles
if (!query.getSetRoles().isEmpty()) {
Map<String, ClientSelectedRole> roles = new HashMap<>(session.getRoles());
roles.putAll(query.getSetRoles());
builder = builder.withRoles(roles);
builder = builder.roles(roles);
}

// update prepared statements if present
if (!query.getAddedPreparedStatements().isEmpty() || !query.getDeallocatedPreparedStatements().isEmpty()) {
Map<String, String> preparedStatements = new HashMap<>(session.getPreparedStatements());
preparedStatements.putAll(query.getAddedPreparedStatements());
preparedStatements.keySet().removeAll(query.getDeallocatedPreparedStatements());
builder = builder.withPreparedStatements(preparedStatements);
builder = builder.preparedStatements(preparedStatements);
}

session = builder.build();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ public void processRows(StatementClient client)
if (row == END_TOKEN) {
break;
}
else if (row != null) {
if (row != null) {
rowBuffer.add(row);
}
}
Expand Down
36 changes: 13 additions & 23 deletions client/trino-cli/src/test/java/io/trino/cli/TestQueryRunner.java
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,6 @@
package io.trino.cli;

import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableSet;
import io.airlift.json.JsonCodec;
import io.airlift.units.Duration;
import io.trino.client.ClientSession;
Expand Down Expand Up @@ -102,27 +100,19 @@ public void testCookie()

static ClientSession createClientSession(MockWebServer server)
{
return new ClientSession(
server.url("/").uri(),
Optional.of("user"),
Optional.empty(),
"source",
Optional.empty(),
ImmutableSet.of(),
"clientInfo",
"catalog",
"schema",
null,
ZoneId.of("America/Los_Angeles"),
Locale.ENGLISH,
ImmutableMap.of(),
ImmutableMap.of(),
ImmutableMap.of(),
ImmutableMap.of(),
ImmutableMap.of(),
null,
new Duration(2, MINUTES),
true);
return ClientSession.builder()
.server(server.url("/").uri())
.principal(Optional.of("user"))
.source("source")
.clientInfo("clientInfo")
.catalog("catalog")
.schema("schema")
.timeZone(ZoneId.of("America/Los_Angeles"))
.locale(Locale.ENGLISH)
.transactionId(null)
.clientRequestTimeout(new Duration(2, MINUTES))
.compressionDisabled(true)
.build();
}

static String createResults(MockWebServer server)
Expand Down
2 changes: 1 addition & 1 deletion client/trino-client/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<parent>
<groupId>io.trino</groupId>
<artifactId>trino-root</artifactId>
<version>395-SNAPSHOT</version>
<version>396-SNAPSHOT</version>
<relativePath>../../pom.xml</relativePath>
</parent>

Expand Down
Loading