-
Notifications
You must be signed in to change notification settings - Fork 3.6k
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
[C++] how to set use_virtual_addressing for pyarrow S3FileSystem #36827
Comments
@pitrou could you pls help me to review this, thank you! |
@windpiger When writing this code, I thought that virtual adressing would be incompatible with a custom endpoint, but it turns out the two should work together (the bucket name would be prepended to the custom hostname: |
Would you like to submit a PR for this? |
Also cc @felipecrv if you want an entrypoint into the filesystem subsystem. |
ok, it's my pleasure~ |
I have usually reproduced the python wheel generation on our CI with for example:
You can also run our wheel tests (once generated) with:
I haven't tested those right now but I have used them in the past. |
@windpiger would you mind push to github and create a patch? |
This was done in #38858. |
This PR only modifies the C++ layer, so when using the Python API, the "force_virtual_addressing" parameter cannot be passed. such as:
|
Yes, sorry. I should have added a separate issue to expose it in Python. |
Currently pyarrow.fs.S3FileSystem init S3Client by using this logic to set use_virtual_addressing :
arrow/cpp/src/arrow/filesystem/s3fs.cc
Line 922 in a2a3b95
arrow/cpp/src/arrow/filesystem/s3fs.cc
Line 956 in a2a3b95
But If I want to set endpointOverride to "https://mytest.endpoint" which is not empty,
use_virtual_addressing
will be set tofalse
becauseuse_virtual_addressing = options_.endpoint_override.empty();
So How can I set
use_virtual_addressing
totrue
if I also want to set a non-empty value for endpointOverride?Maybe we should de-couple these two configs and set them independently
Component(s)
C++
The text was updated successfully, but these errors were encountered: