[
https://issues.apache.org/jira/browse/YARN-875?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13710132#comment-13710132
]
Zhijie Shen commented on YARN-875:
----------------------------------
+1 onError(Throwable). However, does it belong to the incompatible API changes?
Should we catch Throwable t? For example, RuntimeException can also break the
callback thread.
{code}
+ } catch (Exception ex) {
{code}
Another question is how AMRMClientAsync wants to handle RuntimeException from
CallbackHandler APIs, though they're not supposed to throw Exception. What
NMClientAsync does is to wrap try-catch for each calling of CallbackHanlder
APIs, catching Throwable, logging and then ignoring it.
> Application can hang if AMRMClientAsync callback thread has exception
> ---------------------------------------------------------------------
>
> Key: YARN-875
> URL: https://issues.apache.org/jira/browse/YARN-875
> Project: Hadoop YARN
> Issue Type: Bug
> Affects Versions: 2.1.0-beta
> Reporter: Bikas Saha
> Assignee: Xuan Gong
> Attachments: YARN-875.1.patch, YARN-875.1.patch, YARN-875.2.patch
>
>
> Currently that thread will die and then never callback. App can hang.
> Possible solution could be to catch Throwable in the callback and then call
> client.onError().
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira