chunhui shen created HBASE-6204: ----------------------------------- Summary: 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 much 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 much 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