[ https://issues.apache.org/jira/browse/HBASE-6204?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13294143#comment-13294143 ]
chunhui shen commented on HBASE-6204: ------------------------------------- @ram Thanks, HBASE-5998 is good. So close this issue. > Improvement for opening region on the regionserver > -------------------------------------------------- > > Key: HBASE-6204 > URL: https://issues.apache.org/jira/browse/HBASE-6204 > Project: HBase > Issue Type: Improvement > Components: regionserver > Reporter: chunhui shen > Assignee: chunhui shen > > If one table has many regions, like 100k regions. > We would find regionserver open region very slowly. > Opening region in parallel on the rs will be closed to serially. > The following code is the detail: > {code} > public RegionOpeningState openRegion(HRegionInfo region, int > versionOfOfflineNode){ > ... > HTableDescriptor htd = this.tableDescriptors.get(region.getTableName()); > ... > public HTableDescriptor get(final String tablename){ > ... > long modtime = getTableInfoModtime(this.fs, this.rootdir, tablename); > ... > } > } > {code} > getTableInfoModtime->getTableInfoPath->getTableInfoPath->FSUtils.listStatus() > if one table has many regions, FSUtils.listStatus() will take much time > How to improve the above code? > I think an easy way is that make a dir (called .tableinfos) in the table dir > and move the files .tableinfo.* to that dir. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira