hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ravi Prakash (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HADOOP-12353) S3 Native filesystem does not retry all connection failures
Date Thu, 27 Aug 2015 20:38:46 GMT

    [ 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]
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
> 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

View raw message