Skip to content

[C++] S3 FileSystem doesn't seem to handle redirects #28922

@asfimport

Description

@asfimport

In some conditions AWS S3 seems to respond with a redirect, but Arrow seems to consider it an error instead of following the redirect.

For example see

    s3, bucket = fs.FileSystem.from_uri("s3://ursa-labs-taxi-data/?region=us-east-1")
    print(s3.get_file_info(fs.FileSelector(bucket+"/2011", recursive=True)))

The error that you get is

 OSError: When listing objects under key '2011' in bucket 'ursa-labs-taxi-data': AWS Error [code 100]: Unable to parse ExceptionName: PermanentRedirect Message: The bucket you are attempting to access must be addressed using the specified endpoint. Please send all future requests to this endpoint.

It should probably follow the PermanentRedirect instead of choking over it

IT is also possible to reproduce it using

    from pyarrow import fs

    s3 = fs.SubTreeFileSystem("ursa-labs-taxi-data", fs.S3FileSystem())
    print(s3.get_file_info(fs.FileSelector("2011", recursive=True)))

Reporter: Alessandro Molina / @amol-

Related issues:

Note: This issue was originally created as ARROW-13237. Please see the migration documentation for further details.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions