[
https://issues.apache.org/jira/browse/HDFS-11395?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Nandakumar updated HDFS-11395:
------------------------------
Description:
When using RequestHedgingProxyProvider, in case of Exception (like
FileNotFoundException) from ActiveNameNode,
{{RequestHedgingProxyProvider#RequestHedgingInvocationHandler.invoke}} receives
{{ExecutionException}} since we use {{CompletionService}} for the call. The
ExecutionException is put into a map and wrapped with {{MultiException}}.
So for a FileNotFoundException the client receives
{{MultiException(Map(ExecutionException(InvocationTargetException(RemoteException(FileNotFoundException)))))}}
It will cause problem in clients which are handling RemoteExceptions.
was:
When using RequestHedgingProxyProvider, in case of Exception (like
FileNotFoundException) from ActiveNameNode,
{{RequestHedgingProxyProvider#RequestHedgingInvocationHandler.invoke}} receives
{{ExecutionException}} since we use {{CompletionService}} for the call. The
ExecutionException is put into a map and wrapped with {{MultiException}}.
So for a FileNotFoundException the client receives
{{MultiException(Map(ExecutionException(InvocationTargetException(RemoteException(FileNotFoundException)))))}}
It will cause problem in clients which are handling the RemoteExceptions.
> RequestHedgingProxyProvider#RequestHedgingInvocationHandler hides the
> Exception thrown from NameNode
> ----------------------------------------------------------------------------------------------------
>
> Key: HDFS-11395
> URL: https://issues.apache.org/jira/browse/HDFS-11395
> Project: Hadoop HDFS
> Issue Type: Bug
> Components: ha
> Reporter: Nandakumar
> Assignee: Nandakumar
>
> When using RequestHedgingProxyProvider, in case of Exception (like
> FileNotFoundException) from ActiveNameNode,
> {{RequestHedgingProxyProvider#RequestHedgingInvocationHandler.invoke}}
> receives {{ExecutionException}} since we use {{CompletionService}} for the
> call. The ExecutionException is put into a map and wrapped with
> {{MultiException}}.
> So for a FileNotFoundException the client receives
> {{MultiException(Map(ExecutionException(InvocationTargetException(RemoteException(FileNotFoundException)))))}}
> It will cause problem in clients which are handling RemoteExceptions.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]