-
Notifications
You must be signed in to change notification settings - Fork 449
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
feat(python): add capability to read unity catalog (uc://) uris #3113
Conversation
ACTION NEEDED delta-rs follows the Conventional Commits specification for release automation. The PR title and description are used as the merge commit message. Please update your PR title and description to match the specification. |
8fcd7f4
to
0824abe
Compare
/// Allow http url (e.g. http://localhost:8080/api/2.1/...) | ||
/// Supported keys: | ||
/// - `unity_allow_http_url` | ||
AllowHttpUrl, |
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.
This allows users to work with a local (non-https) Unity Catalog REST API with delta-rs
.
0da4600
to
faf9ba9
Compare
faf9ba9
to
1a810d9
Compare
@ion-elgreco I've updated this PR to include the temp credentials functionality from PR #3078. Cheers. |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #3113 +/- ##
==========================================
- Coverage 72.31% 72.16% -0.16%
==========================================
Files 138 138
Lines 45398 45518 +120
Branches 45398 45518 +120
==========================================
+ Hits 32831 32846 +15
- Misses 10489 10591 +102
- Partials 2078 2081 +3 ☔ View full report in Codecov by Sentry. |
1a810d9
to
2fdb6e2
Compare
@omkar-foss looks good from my side! @hntd187 can you please also take a look. Specifically on whether the credentials need to be refreshed as part of the objectstore? Does UC also support writing temp credentials? |
I'll need to add a few python tests for this flow, will add tomorrow and then if all good, I suppose we can merge it. Also please note, the current UC REST integration that we have is more fine-tuned for Databricks Unity Catalog. The Unity Catalog OSS has slightly different response payloads for some APIs. e.g. Generate Temp Credentials API returns I can look into supporting OSS UC smoothly in a separate PR after this one. Cheers. |
Signed-off-by: Omkar P <[email protected]>
Signed-off-by: Omkar P <[email protected]>
Signed-off-by: Omkar P <[email protected]>
f4834cd
to
1acfe46
Compare
Signed-off-by: Omkar P <[email protected]>
@ion-elgreco On a second thought, I've added basic UC docs to this PR itself. It looks as follows: In the next PR, I'll also add some code examples and all, along with the UC OSS payload support. Looks good, would be slightly easier to find under integrations section but can be done in follow up |
@omkar-foss the UC integration test is failing |
Yes I checked, it's passing on my local. Seems like it's an intermittent failure. Would it be possible for you to retrigger that particular failing job, let's see if it passes? |
@omkar-foss can you try to make it not flaky? |
Seems like it gets stuck intermittently due to a deadlock, checking on it now. |
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.
Nice, I appreciate you doing all the doc work with this as well, everything looks great to me.
Signed-off-by: Omkar P <[email protected]>
I've added a dedicated function to execute futures pertaining to UC, based on the function we have for AWS S3 storage. This is helping to prevent the deadlocks by using an appropriate @ion-elgreco @hntd187 guys, please check it out and let me know if this makes sense. Thank you :) |
Signed-off-by: Omkar P <[email protected]>
445f68c
to
0e6c77f
Compare
Description
This adds capability to read directly from uc:// uris using the local catalog-unity crate. This also exposes the UC temporary credentials in storage_options of the
DeltaTable
instance so polars or similar readers can use it.Related Issue(s)
Documentation
N/A