Skip to content

feat: Add support for Trino 470 #705

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 38 commits into from
Mar 11, 2025
Merged
Show file tree
Hide file tree
Changes from 25 commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
6202d19
test(integration): Add Trino 469, update latest version
NickLarsenNZ Feb 5, 2025
f4ca614
docs: Update trino version to 469
NickLarsenNZ Feb 5, 2025
d3de6b5
feat: Add support for Trino 469
NickLarsenNZ Feb 5, 2025
bc1b03b
test(unit): Update trino version used in tests
NickLarsenNZ Feb 5, 2025
94f3159
chore: regenerate Cargo.nix
NickLarsenNZ Feb 5, 2025
9a695e3
chore: Update changelog
NickLarsenNZ Feb 5, 2025
83ceb12
wip: native s3 initial cut
NickLarsenNZ Feb 6, 2025
72a5573
wip: more versiony stuff
NickLarsenNZ Feb 6, 2025
30240b4
wip: parse Trino version as u16 version from String
NickLarsenNZ Feb 6, 2025
5b6b45a
wip: remove comment and restore newline
NickLarsenNZ Feb 6, 2025
46b26f1
feat: Replace 469 with 470
NickLarsenNZ Feb 10, 2025
6983f3f
test: Trino now requires TLS for S3
NickLarsenNZ Feb 10, 2025
dbf9409
chore: Search and replace Trino productVersions
NickLarsenNZ Feb 12, 2025
d74ba65
chore: Rename trino_version to product_version for consistency
NickLarsenNZ Feb 12, 2025
2640426
refactor: Change product_version in the jvm mod to u16 for consistency
NickLarsenNZ Feb 12, 2025
661fead
chore: Improve note about native s3 support
NickLarsenNZ Feb 12, 2025
10c0bd8
chore: Update changelog
NickLarsenNZ Feb 12, 2025
0953c0a
chore: Update changelog
NickLarsenNZ Feb 12, 2025
4753151
chore: Add warning about upcoming requirement for TLS requirement for…
NickLarsenNZ Feb 12, 2025
f868c45
refactor: Use ensure! instead of if not
NickLarsenNZ Feb 12, 2025
831ec53
chore: Bump stackable-operator for S3 region support
NickLarsenNZ Feb 24, 2025
bc54a71
feat: Set the S3 region unless it will be auto-discovered
NickLarsenNZ Feb 24, 2025
dfb42b3
test(smoke): Override hive metastore memory limit due to OOMKilled
NickLarsenNZ Feb 24, 2025
51c0f29
docs: Update supported versions
NickLarsenNZ Feb 24, 2025
4a76618
Merge remote-tracking branch 'origin/main' into bump/trino-469
NickLarsenNZ Feb 24, 2025
4480cb8
Apply suggestions from code review
NickLarsenNZ Feb 25, 2025
ac26e6f
Apply suggestions from code review
NickLarsenNZ Feb 25, 2025
f42a901
test: Update comments about minio and OpenShift testing
NickLarsenNZ Feb 25, 2025
837368e
test: Adjusted comments about minio and OpenShift testing
NickLarsenNZ Feb 25, 2025
cc54e3b
Merge remote-tracking branch 'origin/main' into bump/trino-469
NickLarsenNZ Feb 25, 2025
e9b5321
chore: Bump stackable-operator and use the updated s3 region struct
NickLarsenNZ Mar 10, 2025
dab4c5a
chore: Update changelog
NickLarsenNZ Mar 10, 2025
aa4e599
Merge branch 'main' into bump/trino-469
NickLarsenNZ Mar 10, 2025
db79013
test: Add smoke_aws test to show how to use Trino with AWS S3 buckets
NickLarsenNZ Mar 10, 2025
4624dc2
chore: Make the operator fail for unsupported versions
NickLarsenNZ Mar 11, 2025
fe50cc7
chore: Undo resource overrides now that Hive resources have been incr…
NickLarsenNZ Mar 11, 2025
3bd567f
Apply suggestions from code review
NickLarsenNZ Mar 11, 2025
ab0526d
chore: Update changelog
NickLarsenNZ Mar 11, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,18 +11,23 @@ All notable changes to this project will be documented in this file.
- Run a `containerdebug` process in the background of each Trino container to collect debugging information ([#687]).
- Support configuring JVM arguments ([#677]).
- Aggregate emitted Kubernetes events on the CustomResources ([#677]).
- Support for Trino 470 ([#705]).

## Changed

- Increased the default temporary secret lifetime for coordinators from 1 day to 15 days.
This is because Trino currently does not offer a HA setup for them, a restart kills all running queries ([#694]).
- Default to OCI for image metadata and product image selection ([#695]).
- Explicitly set `fs.native-s3.enabled=true` and `fs.hadoop.enabled=true` in applicable catalog config properties ([#705]).
- Trino 470 requires the native S3 implementation to be used.
- Set the S3 region unless it will be auto-discovered ([#705]).

[#676]: https://github.com/stackabletech/trino-operator/pull/676
[#677]: https://github.com/stackabletech/trino-operator/pull/677
[#687]: https://github.com/stackabletech/trino-operator/pull/687
[#694]: https://github.com/stackabletech/trino-operator/pull/694
[#695]: https://github.com/stackabletech/trino-operator/pull/695
[#705]: https://github.com/stackabletech/trino-operator/pull/705

## [24.11.1] - 2025-01-10

Expand Down
8 changes: 4 additions & 4 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

26 changes: 13 additions & 13 deletions Cargo.nix

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
serde_yaml = "0.9"
snafu = "0.8"
stackable-operator = { git = "https://github.com/stackabletech/operator-rs.git", tag = "stackable-operator-0.85.0" }
stackable-operator = { git = "https://github.com/stackabletech/operator-rs.git", tag = "stackable-operator-0.86.2" }
product-config = { git = "https://github.com/stackabletech/product-config.git", tag = "0.7.0" }
strum = { version = "0.26", features = ["derive"] }
tokio = { version = "1.40", features = ["full"] }
Expand Down
6 changes: 3 additions & 3 deletions crate-hashes.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

78 changes: 78 additions & 0 deletions deploy/helm/trino-operator/crds/crds.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -1578,6 +1578,32 @@ spec:
minimum: 0.0
nullable: true
type: integer
region:
default:
name: us-east-1
description: |-
AWS service API region used by the AWS SDK when using AWS S3 buckets.

This defaults to `us-east-1` and can be ignored if not using AWS S3 buckets.

NOTE: This is not the bucket region, and is used by the AWS SDK to construct endpoints for various AWS service APIs. It is only useful when using AWS S3 buckets.

When using AWS S3 buckets, you can configure optimal AWS service API connections in the following ways: - From **inside** AWS: Use an auto-discovery source (eg: AWS IMDS). - From **outside** AWS, or when IMDS is disabled, explicity set the region name nearest to where the client application is running from.
oneOf:
- required:
- source
- required:
- name
properties:
name:
description: 'An explicit region, eg: eu-central-1'
type: string
source:
description: Defer region detection to an auto-discovery mechanism.
enum:
- AwsImds
type: string
type: object
tls:
description: Use a TLS connection. If not specified no TLS will be used.
nullable: true
Expand Down Expand Up @@ -1795,6 +1821,32 @@ spec:
minimum: 0.0
nullable: true
type: integer
region:
default:
name: us-east-1
description: |-
AWS service API region used by the AWS SDK when using AWS S3 buckets.

This defaults to `us-east-1` and can be ignored if not using AWS S3 buckets.

NOTE: This is not the bucket region, and is used by the AWS SDK to construct endpoints for various AWS service APIs. It is only useful when using AWS S3 buckets.

When using AWS S3 buckets, you can configure optimal AWS service API connections in the following ways: - From **inside** AWS: Use an auto-discovery source (eg: AWS IMDS). - From **outside** AWS, or when IMDS is disabled, explicity set the region name nearest to where the client application is running from.
oneOf:
- required:
- source
- required:
- name
properties:
name:
description: 'An explicit region, eg: eu-central-1'
type: string
source:
description: Defer region detection to an auto-discovery mechanism.
enum:
- AwsImds
type: string
type: object
tls:
description: Use a TLS connection. If not specified no TLS will be used.
nullable: true
Expand Down Expand Up @@ -1929,6 +1981,32 @@ spec:
minimum: 0.0
nullable: true
type: integer
region:
default:
name: us-east-1
description: |-
AWS service API region used by the AWS SDK when using AWS S3 buckets.

This defaults to `us-east-1` and can be ignored if not using AWS S3 buckets.

NOTE: This is not the bucket region, and is used by the AWS SDK to construct endpoints for various AWS service APIs. It is only useful when using AWS S3 buckets.

When using AWS S3 buckets, you can configure optimal AWS service API connections in the following ways: - From **inside** AWS: Use an auto-discovery source (eg: AWS IMDS). - From **outside** AWS, or when IMDS is disabled, explicity set the region name nearest to where the client application is running from.
oneOf:
- required:
- source
- required:
- name
properties:
name:
description: 'An explicit region, eg: eu-central-1'
type: string
source:
description: Defer region detection to an auto-discovery mechanism.
enum:
- AwsImds
type: string
type: object
tls:
description: Use a TLS connection. If not specified no TLS will be used.
nullable: true
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ metadata:
name: simple-trino
spec:
image:
productVersion: "455"
productVersion: "470"
clusterConfig:
catalogLabelSelector:
matchLabels:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ metadata:
name: simple-trino
spec:
image:
productVersion: "455"
productVersion: "470"
clusterConfig:
catalogLabelSelector:
matchLabels:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ metadata:
name: simple-trino
spec:
image:
productVersion: "455"
productVersion: "470"
clusterConfig:
catalogLabelSelector:
matchLabels:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ metadata:
name: simple-trino
spec:
image:
productVersion: "455"
productVersion: "470"
clusterConfig:
tls:
internalSecretClass: trino-internal-tls # <1>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ metadata:
name: simple-trino
spec:
image:
productVersion: "455"
productVersion: "470"
clusterConfig:
tls:
serverSecretClass: trino-tls # <1>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ metadata:
name: simple-trino
spec:
image:
productVersion: "455"
productVersion: "470"
clusterConfig:
tls:
serverSecretClass: trino-tls # <1>
Expand Down
2 changes: 1 addition & 1 deletion docs/modules/trino/pages/usage-guide/catalogs/index.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ metadata:
name: simple-trino
spec:
image:
productVersion: "455"
productVersion: "470"
clusterConfig:
catalogLabelSelector:
matchLabels:
Expand Down
1 change: 1 addition & 0 deletions docs/modules/trino/partials/supported-versions.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,6 @@
// This is a separate file, since it is used by both the direct Trino documentation, and the overarching
// Stackable Platform documentation.

- 470
- 455
- 451 (LTS)
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ metadata:
name: simple-trino
spec:
image:
productVersion: "455"
productVersion: "470"
clusterConfig:
authentication:
- authenticationClass: simple-trino-users
Expand Down
2 changes: 1 addition & 1 deletion examples/simple-trino-cluster-hive-ha-s3.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ metadata:
name: simple-trino
spec:
image:
productVersion: "455"
productVersion: "470"
clusterConfig:
catalogLabelSelector:
matchLabels:
Expand Down
2 changes: 1 addition & 1 deletion examples/simple-trino-cluster-resource-limits.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ metadata:
name: simple-trino
spec:
image:
productVersion: "455"
productVersion: "470"
clusterConfig:
catalogLabelSelector: {}
coordinators:
Expand Down
2 changes: 1 addition & 1 deletion examples/simple-trino-cluster-s3.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ metadata:
name: simple-trino
spec:
image:
productVersion: "455"
productVersion: "470"
clusterConfig:
catalogLabelSelector:
matchLabels:
Expand Down
2 changes: 1 addition & 1 deletion examples/simple-trino-cluster.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ metadata:
name: simple-trino
spec:
image:
productVersion: "455"
productVersion: "470"
clusterConfig:
catalogLabelSelector:
matchLabels:
Expand Down
2 changes: 1 addition & 1 deletion examples/simple-trino-oauth2.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ metadata:
name: simple-trino
spec:
image:
productVersion: "455"
productVersion: "470"
clusterConfig:
authentication:
- authenticationClass: simple-trino-oidc
Expand Down
4 changes: 2 additions & 2 deletions rust/crd/src/affinity.rs
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ mod tests {
name: simple-trino
spec:
image:
productVersion: "455"
productVersion: "470"
clusterConfig:
catalogLabelSelector:
matchLabels:
Expand Down Expand Up @@ -199,7 +199,7 @@ mod tests {
name: simple-trino
spec:
image:
productVersion: "455"
productVersion: "470"
clusterConfig:
catalogLabelSelector:
matchLabels:
Expand Down
Loading