-
Notifications
You must be signed in to change notification settings - Fork 433
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
fix: check lowercase config keys with/without aws prefix in s3logstorefactory #2896
fix: check lowercase config keys with/without aws prefix in s3logstorefactory #2896
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #2896 +/- ##
==========================================
- Coverage 72.50% 72.49% -0.02%
==========================================
Files 131 131
Lines 40362 40421 +59
Branches 40362 40421 +59
==========================================
+ Hits 29266 29304 +38
- Misses 9216 9238 +22
+ Partials 1880 1879 -1 ☔ View full report in Codecov by Sentry. |
abb01c8
to
8041814
Compare
…narios This should reduce bugs, reduce warnings, and improve performance when somebody is using this crate against an S3-alike service rather than AWS S3 directly. Currently I cannot think of a valid scenarijo where one would use AWS_ENDPOINT_URL against actual S3 buckets, so using that as the heuristic
8041814
to
7055b09
Compare
keeping up with this branch, and my local dev environment is kind of a mess, but looks like this resolves my issue - "conditional_put", "CONDITIONAL_PUT", "aws_condititional_put", and "AWS_CONDITIONAL_PUT" all seem to work 👍 |
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.
LGMT I had one nit, but not necessary.
@@ -19,7 +19,7 @@ use deltalake_core::storage::StorageOptions; | |||
use deltalake_core::DeltaResult; | |||
use tracing::log::*; | |||
|
|||
use crate::constants; | |||
use crate::constants::{self, AWS_ENDPOINT_URL}; |
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.
prolly want to revert this and use consistent references here
Description
We were only checking if the lowercase aws_copy_if_not_exists or aws_conditional_put are set to return the stores. But we should ignore the case and check for with and without aws prefix, since ObjectStore does this as well.
This pull request also short-circuits the loading of AWS configuration when using AWS_ENDPOINT_URL or scenarios where the client is not directly interacting with AWS S3 (e.g. Minio, Cloudflare, etc)