You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2017/09/01 20:52:00 UTC

[jira] [Commented] (ZOOKEEPER-2319) UnresolvedAddressException cause the QuorumCnxManager.Listener exit

    [ https://issues.apache.org/jira/browse/ZOOKEEPER-2319?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16151129#comment-16151129 ] 

ASF GitHub Bot commented on ZOOKEEPER-2319:
-------------------------------------------

Github user afine commented on a diff in the pull request:

    https://github.com/apache/zookeeper/pull/348#discussion_r136663144
  
    --- Diff: src/java/main/org/apache/zookeeper/server/quorum/QuorumCnxManager.java ---
    @@ -621,7 +621,7 @@ public Listener() {
             @Override
             public void run() {
                 int numRetries = 0;
    -            InetSocketAddress addr;
    +            InetSocketAddress addr = null;
    --- End diff --
    
    @maoling I think a test case would be great because catching that exception does "change behavior". 


> UnresolvedAddressException cause the QuorumCnxManager.Listener exit
> -------------------------------------------------------------------
>
>                 Key: ZOOKEEPER-2319
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2319
>             Project: ZooKeeper
>          Issue Type: Bug
>    Affects Versions: 3.4.6
>            Reporter: Zhaohui Yu
>             Fix For: 3.5.4, 3.6.0
>
>
> Given three nodes, the leader on 2, but some issue with this machine, so I shutdown this machine, and change the host name to another machine.
> Then I start the node in the new machine, but the new node can not join.
> I found the the 1 and 3's Listener thread exit.
> With the code of Listener's run method:
> I think we should catch UnresolvedAddressException to avoid the Listener exit.
> {noformat}
> @Override
>         public void run() {
>            
>             while((!shutdown) && (numRetries < 3)){
>                 try {
>                    // bind and accept
>                         receiveConnection(client);
>                   
>                 } catch (IOException e) {
>                     
>                 }
>             }
>             //
>         }
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)