[
https://issues.apache.org/jira/browse/ARROW-8310?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Ben Kietzman resolved ARROW-8310.
---------------------------------
Fix Version/s: (was: 1.0.0)
0.17.0
Resolution: Fixed
Issue resolved by pull request 6809
[https://github.com/apache/arrow/pull/6809]
> [C++] Minio's exceptions not recognized by IsConnectError()
> -----------------------------------------------------------
>
> Key: ARROW-8310
> URL: https://issues.apache.org/jira/browse/ARROW-8310
> Project: Apache Arrow
> Issue Type: Bug
> Components: C++
> Affects Versions: 0.16.0
> Reporter: Ben Kietzman
> Assignee: Antoine Pitrou
> Priority: Minor
> Labels: pull-request-available
> Fix For: 0.17.0
>
> Time Spent: 40m
> Remaining Estimate: 0h
>
> Minio emits an {{XMinioServerNotInitialized}} exception on failure to
> connect, which is recognized by {{ConnectRetryStrategy}} and used to trigger
> a retry instead of an error. This exception has an HTTP error 503.
> However this code does not round trip through the AWS SDK, which maintains an
> explicit [mapping from known exception names to error
> codes|https://github.com/aws/aws-sdk-cpp/blob/d36c2b16c9c3caf81524ebfff1e70782b8e1a006/aws-cpp-sdk-core/source/client/CoreErrors.cpp#L37]
> and will demote an unrecognized exception name [to
> {{CoreErrors::UNKNOWN}}|https://github.com/aws/aws-sdk-cpp/blob/master/aws-cpp-sdk-core/source/client/AWSErrorMarshaller.cpp#L150]
> The end result is flakiness in the test (and therefore CI) since
> {{ConnectRetryStrategy}} never gets a chance to operate, see for example
> https://github.com/apache/arrow/pull/6789/checks?check_run_id=552871444#step:6:1778
> Probably {{IsConnectError}} will need to examine the error string in the
> event of {{CoreErrors::UNKNOWN}}.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)