[ https://issues.apache.org/jira/browse/HBASE-20891?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Vikas Vishwakarma updated HBASE-20891: -------------------------------------- Summary: Avoid intermediate array to arraylist inter-conversions while loading scan cache (was: Avoid intermediate array to arraylist conversions while loading scan cache) > Avoid intermediate array to arraylist inter-conversions while loading scan > cache > -------------------------------------------------------------------------------- > > Key: HBASE-20891 > URL: https://issues.apache.org/jira/browse/HBASE-20891 > Project: HBase > Issue Type: Bug > Components: Client > Affects Versions: 3.0.0, 2.1.0 > Reporter: Vikas Vishwakarma > Assignee: Vikas Vishwakarma > Priority: Major > > As discussed in HBASE-20866, we would like to avoid array to arraylist > conversions while loading scan cache which is currently happening as part of > partial result handling. In HBASE-20866 we are handling the changes for > branch-1.x. In this request we will handle it for branch-2 and master branch, > since the code has been refactored and will require more changes compared to > branch-1 > Also preliminary look at the master branch shows that result handling has > been separated out into AllowPartialScanResultCache, BatchScanResultCache and > CompleteScanResultCache. > In case of BatchScanResultCache we are actually converting Result[] to > List<Result> for result grooming and then List<Result> back to toArray > before returning to loadCache() where it is added to cache. > So in case of BatchScanResultCache if we are able to directly load the > results to cache then we would be avoiding two intermediate conversions > * result Array to ArrayList in BatchScanResultCache for result grooming > * ArrayList to array conversion while returning to loadCache() > Which will probably give higher performance improvement compared to branch-1 > case handled in HBASE-20866 where we avoided just one result array to > arraylist conversion and saw upto 10% improvement in scan performance > -- This message was sent by Atlassian JIRA (v7.6.3#76005)