[
https://issues.apache.org/jira/browse/HBASE-7163?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13498466#comment-13498466
]
Lars Hofhansl commented on HBASE-7163:
--------------------------------------
Presumably SoftValueSortedMap was used to allow GC'ing cached entries when
memory is tight.
Not that I am a big fan of that, but I just want to point out that we loose
this with ConcurrentSkipListMap.
> Low-hanging perf improvements in HBase client
> ----------------------------------------------
>
> Key: HBASE-7163
> URL: https://issues.apache.org/jira/browse/HBASE-7163
> Project: HBase
> Issue Type: Sub-task
> Reporter: Karthik Ranganathan
> Assignee: Karthik Ranganathan
>
> 1. Change cachedRegionsLocations in HConnectionManager from
> SoftValueSortedMap to ConcurrentSkipListMap:
> This change saves 15% CPU on the client side per profiling. In using the
> ConcurrentSkipListMap, we can do:
> tableLocations.floorEntry(row).getValue()
> instead of doing:
> SortedMap<byte[], HRegionLocation> matchingRegions =
> tableLocations.floorEntry(row).getValue();
> if (!matchingRegions.isEmpty()) {
> HRegionLocation possibleRegion =
> matchingRegions.get(matchingRegions.lastKey());
> }
> 2. NetUtils.getDefaultSocketFactory is very inefficient, use
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira