Michael Han created ZOOKEEPER-2442:
--------------------------------------

             Summary: Socket leak in QuorumCnxManager connectOne
                 Key: ZOOKEEPER-2442
                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2442
             Project: ZooKeeper
          Issue Type: Bug
          Components: quorum, server
    Affects Versions: 3.5.1
            Reporter: Michael Han
            Assignee: Michael Han


The function connectOne() in QuorumCnxManager.java sometimes fails to release a 
socket allocated by Socket():

{code}
 try {

                if (LOG.isDebugEnabled()) {
                    LOG.debug("Opening channel to server " + sid);
                }
                Socket sock = new Socket();
                setSockOpts(sock);
                sock.connect(self.getView().get(sid).electionAddr, cnxTO);
                if (LOG.isDebugEnabled()) {
                    LOG.debug("Connected to server " + sid);
                }
                initiateConnection(sock, sid);
            } catch (UnresolvedAddressException e) {
                // Sun doesn't include the address that causes this
                // exception to be thrown, also UAE cannot be wrapped cleanly
                // so we log the exception in order to capture this critical
                // detail.
                LOG.warn("Cannot open channel to " + sid
                        + " at election address " + electionAddr, e);
                throw e;
            } catch (IOException e) {
                LOG.warn("Cannot open channel to " + sid
                        + " at election address " + electionAddr,
                        e);
            }
{code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to