[ https://issues.apache.org/jira/browse/HBASE-9393?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15110021#comment-15110021 ]
ramkrishna.s.vasudevan commented on HBASE-9393: ----------------------------------------------- [~ashish singhi] Just going thro this JIRA and the discussion above. Once a HFile is created in RS we immediately keep it open (the streams are alive). So during this process do we read the FileInfo? If so just after reading the FileInfo we can call unbuffer. And as Anoop says- after reading the HFileblock am not very sure if it is right to call unbuffer() instead after evey scan is done we can call unbuffer() - But how costly is that operation? One more question - If preads does not have this SOCKETS kept open then that should ideally help in all these cases - but we may need to evaluate which one is going to be costlier. > Hbase does not closing a closed socket resulting in many CLOSE_WAIT > -------------------------------------------------------------------- > > Key: HBASE-9393 > URL: https://issues.apache.org/jira/browse/HBASE-9393 > Project: HBase > Issue Type: Bug > Affects Versions: 0.94.2, 0.98.0 > Environment: Centos 6.4 - 7 regionservers/datanodes, 8 TB per node, > 7279 regions > Reporter: Avi Zrachya > Assignee: Ashish Singhi > Attachments: HBASE-9393.patch > > > HBase dose not close a dead connection with the datanode. > This resulting in over 60K CLOSE_WAIT and at some point HBase can not connect > to the datanode because too many mapped sockets from one host to another on > the same port. > The example below is with low CLOSE_WAIT count because we had to restart > hbase to solve the porblem, later in time it will incease to 60-100K sockets > on CLOSE_WAIT > [root@hd2-region3 ~]# netstat -nap |grep CLOSE_WAIT |grep 21592 |wc -l > 13156 > [root@hd2-region3 ~]# ps -ef |grep 21592 > root 17255 17219 0 12:26 pts/0 00:00:00 grep 21592 > hbase 21592 1 17 Aug29 ? 03:29:06 > /usr/java/jdk1.6.0_26/bin/java -XX:OnOutOfMemoryError=kill -9 %p -Xmx8000m > -ea -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode > -Dhbase.log.dir=/var/log/hbase > -Dhbase.log.file=hbase-hbase-regionserver-hd2-region3.swnet.corp.log ... -- This message was sent by Atlassian JIRA (v6.3.4#6332)