[
https://issues.apache.org/jira/browse/HBASE-20686?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16503293#comment-16503293
]
Chia-Ping Tsai commented on HBASE-20686:
----------------------------------------
{code:java}
+ IOException e = re.unwrapRemoteException(
+ AccessControlException.class,
+ DSQuotaExceededException.class,
+ QuotaByStorageTypeExceededException.class,
+ FileAlreadyExistsException.class,
+ FileNotFoundException.class,
+ ParentNotDirectoryException.class,
+ NSQuotaExceededException.class,
+ RetryStartFileException.class,
+ SafeModeException.class,
+ UnresolvedPathException.class,
+ SnapshotAccessControlException.class,
+ UnknownCryptoProtocolVersionException.class);
+ if (e instanceof RetryStartFileException) {
{code}
Why we try to look up other exception types if the exception we want to handle
is only the RetryStartFileException?
> Asyncfs should retry upon RetryStartFileException
> -------------------------------------------------
>
> Key: HBASE-20686
> URL: https://issues.apache.org/jira/browse/HBASE-20686
> Project: HBase
> Issue Type: Bug
> Components: asyncclient
> Affects Versions: 2.0.0-beta-1
> Environment: HBase 2.0, Hadoop 3 with at-rest encryption
> Reporter: Wei-Chiu Chuang
> Assignee: Wei-Chiu Chuang
> Priority: Major
> Attachments: HBASE-20686.master.001.patch
>
>
> In Hadoop-2.6 and above, HDFS client retries on RetryStartFileException when
> NameNode experience encryption zone related issue. The code exists in
> DFSOutputStream#newStreamForCreate(). (HDFS-6970)
> In HBase-2's asyncfs implementation,
> FanOutOneBlockAsyncDFSOutputHelper#createOutput() is somewhat an imitation of
> HDFS's DFSOutputStream#newStreamForCreate(). However it does not retry upon
> RetryStartFileException. So it is less resilient to such issues.
> Also, DFSOutputStream#newStreamForCreate() upwraps RemoteExceptions, but
> asyncfs does not. Therefore, hbase gets different exceptions than before.
> File this jira to get this corrected.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)