[ https://issues.apache.org/jira/browse/HBASE-26394?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
chenglei updated HBASE-26394: ----------------------------- Description: In {{RSRpcServices.executeProcedures}} , we use tdCache to avoid reading from the {{TableDescritor}} every time(usually it will read from the file system), just as following line 3923 : {code:java} 3914 public ExecuteProceduresResponse executeProcedures(RpcController controller, 3915 ExecuteProceduresRequest request) throws ServiceException { 3916 try { 3917 checkOpen(); 3918 throwOnWrongStartCode(request); 3919 regionServer.getRegionServerCoprocessorHost().preExecuteProcedures(); 3920 if (request.getOpenRegionCount() > 0) { 3921 // Avoid reading from the TableDescritor every time(usually it will read from the file 3922 // system) 3923 Map<TableName, TableDescriptor> tdCache = new HashMap<>(); 3924 request.getOpenRegionList().forEach(req -> executeOpenRegionProcedures(req, tdCache)); 3925 } ...... {code} but for {{RSRpcServices.executeOpenRegionProcedures}} in above line 3924, there is no place to fill the {{tdCache}}, so the {{tdCache}} does not take effect in fact. was:In > Cache in RSRpcServices.executeProcedures does not take effect > ------------------------------------------------------------- > > Key: HBASE-26394 > URL: https://issues.apache.org/jira/browse/HBASE-26394 > Project: HBase > Issue Type: Bug > Affects Versions: 3.0.0-alpha-1, 2.4.8 > Reporter: chenglei > Priority: Major > > In {{RSRpcServices.executeProcedures}} , we use tdCache to avoid reading > from the {{TableDescritor}} every time(usually it will read from the file > system), just as following line 3923 : > {code:java} > 3914 public ExecuteProceduresResponse executeProcedures(RpcController > controller, > 3915 ExecuteProceduresRequest request) throws ServiceException { > 3916 try { > 3917 checkOpen(); > 3918 throwOnWrongStartCode(request); > 3919 > regionServer.getRegionServerCoprocessorHost().preExecuteProcedures(); > 3920 if (request.getOpenRegionCount() > 0) { > 3921 // Avoid reading from the TableDescritor every time(usually it > will read from the file > 3922 // system) > 3923 Map<TableName, TableDescriptor> tdCache = new HashMap<>(); > 3924 request.getOpenRegionList().forEach(req -> > executeOpenRegionProcedures(req, tdCache)); > 3925 } > ...... > {code} > but for {{RSRpcServices.executeOpenRegionProcedures}} in above line 3924, > there is no place to fill the {{tdCache}}, so the {{tdCache}} does not take > effect in fact. -- This message was sent by Atlassian Jira (v8.3.4#803005)