-
Notifications
You must be signed in to change notification settings - Fork 3k
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
Add extra_properties to iceberg table properties #20393
Conversation
88f8b64
to
2c582fe
Compare
plugin/trino-iceberg/src/main/java/io/trino/plugin/iceberg/IcebergUtil.java
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Docs changes are fine. Java code seems to be using wrong style. Please update - see https://trino.io/development/#code-style
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks like this PR will also allow ALTER TABLE SET PROPERTIES extra_properties
. Please consider adding this to the documentation.
plugin/trino-iceberg/src/main/java/io/trino/plugin/iceberg/IcebergMetadata.java
Outdated
Show resolved
Hide resolved
regarding do the following before submitting the PR to ensure that the code you are changing follows the code conventions:
|
plugin/trino-iceberg/src/main/java/io/trino/plugin/iceberg/IcebergTableProperties.java
Show resolved
Hide resolved
plugin/trino-iceberg/src/main/java/io/trino/plugin/iceberg/IcebergUtil.java
Outdated
Show resolved
Hide resolved
plugin/trino-iceberg/src/test/java/io/trino/plugin/iceberg/BaseIcebergConnectorTest.java
Show resolved
Hide resolved
2c582fe
to
bc9453d
Compare
@findinpath @oneonestar @mosabua I made the requested changes! |
e9b9e2c
to
bcc1ed3
Compare
plugin/trino-iceberg/src/main/java/io/trino/plugin/iceberg/IcebergMetadata.java
Outdated
Show resolved
Hide resolved
plugin/trino-iceberg/src/test/java/io/trino/plugin/iceberg/BaseIcebergConnectorTest.java
Outdated
Show resolved
Hide resolved
ce2d3bf
to
1e6de9c
Compare
Hi. Is there any plan to merge this PR? |
@ebyhr @findinpath is this ready for merge? |
Hopeful this can be merged somewhat soon. Being able to access these properties is essential if you're trying to do parallel UPSERT (MERGE INTO in Iceberg), i.e aws/aws-sdk-pandas#2651 (comment) |
6a91d7c
to
c15b81f
Compare
plugin/trino-iceberg/src/main/java/io/trino/plugin/iceberg/IcebergTableProperties.java
Show resolved
Hide resolved
I've rebased and addressed some of the comments. @ebyhr could you PTAL? |
Sure, let me review tomorrow. |
9cd7df1
to
981c6a7
Compare
@ebyhr I've added |
981c6a7
to
71dd6dc
Compare
plugin/trino-iceberg/src/test/java/io/trino/plugin/iceberg/BaseIcebergConnectorTest.java
Outdated
Show resolved
Hide resolved
plugin/trino-iceberg/src/test/java/io/trino/plugin/iceberg/BaseIcebergConnectorTest.java
Outdated
Show resolved
Hide resolved
plugin/trino-iceberg/src/test/java/io/trino/plugin/iceberg/BaseIcebergConnectorTest.java
Outdated
Show resolved
Hide resolved
plugin/trino-iceberg/src/test/java/io/trino/plugin/iceberg/BaseIcebergConnectorTest.java
Outdated
Show resolved
Hide resolved
...roduct-tests/src/main/java/io/trino/tests/product/iceberg/TestIcebergSparkCompatibility.java
Show resolved
Hide resolved
plugin/trino-iceberg/src/main/java/io/trino/plugin/iceberg/IcebergConfig.java
Show resolved
Hide resolved
plugin/trino-iceberg/src/test/java/io/trino/plugin/iceberg/BaseIcebergConnectorTest.java
Show resolved
Hide resolved
plugin/trino-iceberg/src/test/java/io/trino/plugin/iceberg/BaseIcebergConnectorTest.java
Show resolved
Hide resolved
plugin/trino-iceberg/src/test/java/io/trino/plugin/iceberg/BaseIcebergConnectorTest.java
Show resolved
Hide resolved
71dd6dc
to
329d45c
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ac
plugin/trino-iceberg/src/test/java/io/trino/plugin/iceberg/BaseIcebergConnectorTest.java
Show resolved
Hide resolved
plugin/trino-iceberg/src/test/java/io/trino/plugin/iceberg/BaseIcebergConnectorTest.java
Show resolved
Hide resolved
plugin/trino-iceberg/src/test/java/io/trino/plugin/iceberg/BaseIcebergConnectorTest.java
Show resolved
Hide resolved
Some policies require to add extra properties to Iceberg tables (e.g. for tracking table origin). Co-authored-by: Priyansh121096 <[email protected]>
329d45c
to
b93155e
Compare
@ebyhr ptal |
b93155e
to
f66de17
Compare
Description
This PR allows us to pass through additional properties to Iceberg when creating a table in Trino.
The additional properties can be provided in the following format
The extra properties will not be exposed in SHOW CREATE.
The purpose of this feature is to add properties that can be used by catalogs or other tools. For example, in Tabular, there is a property to optimize tables. For our use case, we want to create our tables with the
optimizer.enabled
value set to False, and we cannot achieve this without a way to handle arbitrary properties.Additional context and related issues
Fixes #17427
Release notes
(x) Release notes are required, with the following suggested text: