[
https://issues.apache.org/jira/browse/HADOOP-12353?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14717488#comment-14717488
]
Ravi Prakash commented on HADOOP-12353:
---------------------------------------
Thanks for the review Steve! The places (other than S3) RetryPolicy seems to be
used is
1.
[{{ServerProxy.createRetryPolicy}}|https://github.com/apache/hadoop/blob/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/client/ServerProxy.java#L83]
and
2.
[{{RMProxy.createRetryProxy}}|https://github.com/apache/hadoop/blob/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/client/RMProxy.java#L253]
The exception classes which have NO subclasses are {{NoRouteToHostException}},
{{UnknownHostException}}, {{ConnectTimeoutException}}, {{RetriableException}},
{{NMNotYetReadyException}}.
The exception classes which have subclasses are: {{EOFException}},
{{ConnectException}} and {{SocketException}} . Until now, subclasses of these 3
classes would not cause RETRY_FOREVER. I don't know if the original intention
was that. [~jianhe] Could you please clarify?
Just to be sure I grepped for it in hive and pig code and didn't find any
instances.
> S3 Native filesystem does not retry all connection failures
> -----------------------------------------------------------
>
> Key: HADOOP-12353
> URL: https://issues.apache.org/jira/browse/HADOOP-12353
> Project: Hadoop Common
> Issue Type: Bug
> Components: fs/s3
> Affects Versions: 2.7.1
> Reporter: Mariusz Strzelecki
> Assignee: Mariusz Strzelecki
> Priority: Minor
> Attachments: HADOOP-12353.001.patch, HADOOP-12353.002.patch
>
>
> Current implementation of NativeS3FileSystem.java uses RetryProxy that
> retries exceptions that may occur on network communication with S3 API, but
> these exceptions must be exact instances of IOException:
> https://github.com/apache/hadoop/blob/master/hadoop-tools/hadoop-aws/src/main/java/org/apache/hadoop/fs/s3native/NativeS3FileSystem.java#L349
> Our tests show that HttpClient throws IOException subclasses which are not
> handled by Proxy.
> Additionally, not all methods that call S3 API are listed to be handled, i.e.
> storeEmptyFile and retrieveMetadata are missing.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)