[
https://issues.apache.org/jira/browse/HADOOP-3779?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12614784#action_12614784
]
LN commented on HADOOP-3779:
----------------------------
Raghu: i don't think HADOOP-3633 is my situation, i am running hbase on hadoop,
which keeps MapFile.Reader open.(stack described more in HADOOP-2341),
thousands Reader may open as hbase(regionserver) process running, but only few
of them performing io in one second, so the datanode is not overloading(need
refusing following requests), as HADOOP-3633 focusing on.
write timeout in HADOOP-2346 is helpful for this issue, idle
connections(default 8min) closed(will reopen by DFSClient transparently), but
not enough, that's why this issue opened.
> limit concurrent connections(data serving thread) in one datanode
> -----------------------------------------------------------------
>
> Key: HADOOP-3779
> URL: https://issues.apache.org/jira/browse/HADOOP-3779
> Project: Hadoop Core
> Issue Type: Improvement
> Components: dfs
> Affects Versions: 0.17.1
> Reporter: LN
> Priority: Minor
>
> i'm here after HADOOP-2341 and HADOOP-2346, in my hbase env, many opening
> mapfiles cause datanode OOME(stack memory), because 2000+ data serving
> threads in datanode process.
> although HADOOP-2346 has implements timeouts, it will be some situation many
> connection created before the read timeout(default 6min) reach. like hbase
> does, it open all files on regionserver startup.
> limit concurrent connections(data serving thread) will make datanode more
> stable. and i think it could be done in
> SocketIOWithTimeout$SelectorPool#select:
> 1. in SelectorPool#select, record all waiting SelectorInfo instances in a
> List at the beginning, and remove it after 'Selector#select' done.
> 2. before real 'select', do a limitation check, if reached, close the first
> selectorInfo.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.