You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-issues@hadoop.apache.org by "Daryn Sharp (JIRA)" <ji...@apache.org> on 2018/11/02 20:09:00 UTC

[jira] [Commented] (HADOOP-15897) Port range binding fails due to socket bind race condition

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

Daryn Sharp commented on HADOOP-15897:
--------------------------------------

We're testing this internally.  Can't write a test case because java doesn't expose the ability to independently bind and listen, thus preventing the interleaving of bind/listen necessary to produce the issue on demand.  Ie. t1:bind, t2:bind, t1:listen, t2:listen.

> Port range binding fails due to socket bind race condition
> ----------------------------------------------------------
>
>                 Key: HADOOP-15897
>                 URL: https://issues.apache.org/jira/browse/HADOOP-15897
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: ipc
>    Affects Versions: 2.0.2-alpha
>            Reporter: Daryn Sharp
>            Assignee: Daryn Sharp
>            Priority: Major
>         Attachments: HADOOP-15897.patch
>
>
> Java's {{ServerSocket#bind}} does both a bind and listen. At a system level, multiple processes may bind to the same port but only one may listen. Java sockets are left in an unrecoverable state when a process loses the race to listen first.
> Servers that compete over a listening port range (ex. App Master) will fail the entire range after a collision.  The IPC layer should make a better effort to recover from failed binds.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: common-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-issues-help@hadoop.apache.org