You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@arrow.apache.org by "Miles Granger (Jira)" <ji...@apache.org> on 2022/10/26 11:49:00 UTC
[jira] [Commented] (ARROW-17985) [Python] Opaque error code ([code: 100]), when not setting region
[ https://issues.apache.org/jira/browse/ARROW-17985?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17624393#comment-17624393 ]
Miles Granger commented on ARROW-17985:
---------------------------------------
Pretty uncomfortable indeed. :(
It appears the relevant code here in [s3fs.cc |https://github.com/apache/arrow/blob/7f6c5aeb5388936709642e48aed6419d1e2144a6/cpp/src/arrow/filesystem/s3fs.cc#L2305] has determined that the bucket exists, but some other error has happened and doesn't appear it does anything to obfuscate it. Infact the ``GetError`` is right from AWS' C++ library: [Outcome.h | https://github.com/aws/aws-sdk-cpp/blob/b469499e96b957c478d121086272ea496c9b92e8/aws-cpp-sdk-core/include/aws/core/utils/Outcome.h#L147] Maybe just bad error code from AWS?
Suggest maybe opening an issue with them, feel free to link to this issue/comment here in case I'm mistaken. :)
> [Python] Opaque error code ([code: 100]), when not setting region
> -----------------------------------------------------------------
>
> Key: ARROW-17985
> URL: https://issues.apache.org/jira/browse/ARROW-17985
> Project: Apache Arrow
> Issue Type: Bug
> Components: Python
> Reporter: Vedant Roy
> Priority: Minor
>
> A few odd things are going on with the Python bindings:
> # Statefulness. I ran the following code:
> {code:java}
> import os
> import pyarrow.fs as arrow_fs
> def fs_():
> s3_fs = arrow_fs.S3FileSystem(
> access_key="<token>",
> secret_key="<token>",
> endpoint_override="<cloudflare r2 url>",
> )
> return s3_fs
> fs = fs_()
> print(fs.get_file_info("data"))
> {code}
> and it worked on one machine but not the other. Only setting
> {code:java}
> region="auto"
> {code}
> allowed the code to work consistently on both computers.
> Furthermore, the error message is very opaque:
> {code:java}
> Traceback (most recent call last):
> File "cluster_scripts/test_s3.py", line 51, in <module>
> print(fs.get_file_info("data"))
> File "pyarrow/_fs.pyx", line 439, in pyarrow._fs.FileSystem.get_file_info
> File "pyarrow/error.pxi", line 143, in pyarrow.lib.pyarrow_internal_check_status
> File "pyarrow/error.pxi", line 114, in pyarrow.lib.check_status
> OSError: When getting information for bucket 'data': AWS Error [code 100]: No response body.
> {code}
> Googling this error gives no information whatsoever. I managed to figure out the issue by switching from Cloudflare to S3, and when the issue was still going on, I explicitly set a region, but the experience was pretty painful.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)