Skip to content
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

Support additional configurations for Nessie catalog #17725

Merged
merged 2 commits into from
Nov 2, 2023

Conversation

ajantha-bhat
Copy link
Member

@ajantha-bhat ajantha-bhat commented Jun 1, 2023

Description

Nessie server can be deployed with Auth mode like keycloak.
So, need to expose the Nessie client configurations to handle the Auth.
Along with that, some common Nessie server configurations like read-timeout-ms,
connect-timeout-ms, and compression-enabled properties are exposed to have finer
control over the Nessie commits.

Additional context and related issues

https://projectnessie.org/tools/client_config/

Release notes

(x) Release notes are required, with the following suggested text:

# Iceberg
* Add support for bearer authentication in the Nessie catalog. ({issue}`17725`)

@cla-bot cla-bot bot added the cla-signed label Jun 1, 2023
@github-actions github-actions bot added docs iceberg Iceberg connector labels Jun 1, 2023
Copy link

@dimas-b dimas-b left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice improvement 👍

Copy link
Member

@ebyhr ebyhr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please add tests (config test is insufficient especially for auth) and fix the commit title https://github.com/trinodb/trino/blob/master/.github/DEVELOPMENT.md#format-git-commit-messages

ebyhr

This comment was marked as duplicate.

@ajantha-bhat ajantha-bhat changed the title Iceberg: Support additional configurations for Nessie catalog Support additional configurations for Nessie catalog for Iceberg connector Jun 1, 2023
@ajantha-bhat ajantha-bhat changed the title Support additional configurations for Nessie catalog for Iceberg connector Support additional configurations for Nessie catalog in Iceberg connector Jun 1, 2023
@ajantha-bhat ajantha-bhat force-pushed the config branch 2 times, most recently from 824df79 to 24b4643 Compare June 2, 2023 07:44
@ajantha-bhat
Copy link
Member Author

@ebyhr: Thanks for an awesome review.

Please add tests (config test is insufficient especially for auth)

testDefaults checks for the NONE auth and testExplicitPropertyMapping checks for BEARER auth now.
If you meant an end-to-end integration test for auth. I think it is possible with Nessie container and keycloak docker. I am figuring it out.

@ajantha-bhat ajantha-bhat force-pushed the config branch 2 times, most recently from 1a1bfec to a23af13 Compare June 8, 2023 10:41
@ajantha-bhat
Copy link
Member Author

@ebyhr: The PR is ready. Can you please take another look? thanks.

@ajantha-bhat
Copy link
Member Author

Gentle reminder @ebyhr, @electrum

@EternalDeiwos
Copy link

@ajantha-bhat thanks for adding this. BEARER auth is strictly necessary to use the Nessie catalog.

@ajantha-bhat
Copy link
Member Author

@ajantha-bhat thanks for adding this. BEARER auth is strictly necessary to use the Nessie catalog.

True. Nessie is usually deployed with Auth in production and this PR is definitely a high priority for Using Nessie + Trino in production environment.

@findinpath findinpath self-requested a review June 21, 2023 20:28
@ajantha-bhat
Copy link
Member Author

@findinpath: Thanks for self requesting the review.
Looking forward to the review and help in merging this.

@ajantha-bhat
Copy link
Member Author

I just rebased the PR since there was a conflict in pom file.

@ajantha-bhat
Copy link
Member Author

Just pushed the rebase (no conflicts). I will work on comments on the latest code.

@ajantha-bhat ajantha-bhat force-pushed the config branch 2 times, most recently from eeda12c to da29c08 Compare October 23, 2023 10:59
@ajantha-bhat
Copy link
Member Author

@ebyhr : Addressed all the comments except #17725 (comment) and #17725 (comment). (Both related to test refactoring)

Let me know how to proceed further.

@ajantha-bhat
Copy link
Member Author

I just did a rebase since there was conflict in pom.xml

Nessie server configurations like read-timeout-ms, connect-timeout-ms
and enable-compression properties are exposed to have finer control
over the Nessie commits.
@ajantha-bhat
Copy link
Member Author

Rebased agian to resolve conflict from Iceberg 1.4.1 version bump.

@ajantha-bhat
Copy link
Member Author

ebyhr force-pushed the config branch from 688d637 to 602e03b
19 hours ago

LGTM.

@ajantha-bhat
Copy link
Member Author

Added an empty commit to retrigger the build as the testcase failure seems to be flaky (unrelated to Nessie)

@ebyhr
Copy link
Member

ebyhr commented Nov 2, 2023

CI hit #18134

Nessie server can be deployed with Authentication mode with keycloak.
So, need to expose the Nessie client configurations to handle the Auth.
@ebyhr ebyhr merged commit 73b1f75 into trinodb:master Nov 2, 2023
45 of 46 checks passed
@github-actions github-actions bot added this to the 432 milestone Nov 2, 2023
@ajantha-bhat
Copy link
Member Author

Thanks @ebyhr for the thorough review and the guidance.

martint added a commit to martint/trino that referenced this pull request Nov 2, 2023
It generates unnecessary clutter when running tests.

Follow up to trinodb#17725
martint added a commit that referenced this pull request Nov 2, 2023
It generates unnecessary clutter when running tests.

Follow up to #17725
@mosabua
Copy link
Member

mosabua commented Nov 2, 2023

Congratulations @ajantha-bhat .. great job. Thank you so much to @ebyhr for all the help and guidance.

shreyas-dview pushed a commit to dview-io/trino that referenced this pull request Dec 12, 2023
It generates unnecessary clutter when running tests.

Follow up to trinodb#17725
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Development

Successfully merging this pull request may close these issues.

6 participants