[
https://issues.apache.org/jira/browse/HAMA-966?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14640148#comment-14640148
]
Hudson commented on HAMA-966:
-----------------------------
SUCCESS: Integrated in Hama-trunk #447 (See
[https://builds.apache.org/job/Hama-trunk/447/])
HAMA-966: NioServerListener doesn't throw any exceptions (JongYoon Lim via
edwardyoon) (edwardyoon: rev 1692461)
* /hama/trunk/CHANGES.txt
*
/hama/trunk/core/src/main/java/org/apache/hama/bsp/message/HamaAsyncMessageManagerImpl.java
* /hama/trunk/core/src/main/java/org/apache/hama/ipc/AsyncServer.java
> NioServerListener doesn't throw any exceptions.
> -----------------------------------------------
>
> Key: HAMA-966
> URL: https://issues.apache.org/jira/browse/HAMA-966
> Project: Hama
> Issue Type: Bug
> Components: bsp core
> Affects Versions: 0.7.0
> Reporter: JongYoon Lim
> Assignee: JongYoon Lim
> Priority: Minor
> Fix For: 0.7.1
>
> Attachments: HAMA-966.patch
>
>
> *NioServerListener* which extends *Thread* can't throw any exceptions because
> it swallows them in *run()* as follows.
> {code:java}
> try {
> // code for server bootstraping and binding
> } catch (Exception e) {
> e.printStackTrace();
> }
> {code}
> This results in that *startServer()* can't catch *BindException* and retry to
> start the server recursively. There can be two options.
> * Option 1. Use *Thread.UncaughtExceptionHandler*.
> * Option 2. Make *NioServerListener* extend *Callable* and use *get()* of
> *Future* to catch exceptions.
> I think *Option 2* looks better because the code could be more intuitive.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)