hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Daryn Sharp (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (HADOOP-9955) RPC idle connection closing is extremely inefficient
Date Thu, 14 Nov 2013 01:20:19 GMT

     [ https://issues.apache.org/jira/browse/HADOOP-9955?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Daryn Sharp updated HADOOP-9955:
--------------------------------

    Attachment: HADOOP-9955.patch

Refactored to use a {{ConnectionManager}} class that manages the concurrent set, the CAS-based
size, and the idle connection timer.

> RPC idle connection closing is extremely inefficient
> ----------------------------------------------------
>
>                 Key: HADOOP-9955
>                 URL: https://issues.apache.org/jira/browse/HADOOP-9955
>             Project: Hadoop Common
>          Issue Type: Sub-task
>          Components: ipc
>    Affects Versions: 2.0.0-alpha, 3.0.0
>            Reporter: Daryn Sharp
>            Assignee: Daryn Sharp
>         Attachments: HADOOP-9955.patch, HADOOP-9955.patch
>
>
> The RPC server listener loops accepting connections, distributing the new connections
to socket readers, and then conditionally & periodically performs a scan for idle connections.
 The idle scan choses a _random index range_ to scan in a _synchronized linked list_.
> With 20k+ connections, walking the range of indices in the linked list is extremely expensive.
 During the sweep, other threads (socket responder and readers) that want to close connections
are blocked, and no new connections are being accepted.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Mime
View raw message