[ https://issues.apache.org/jira/browse/HBASE-5088?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Lars Hofhansl resolved HBASE-5088. ---------------------------------- Resolution: Fixed Hadoop Flags: Reviewed Committed to 0.92 and trunk. Not entirely convinced we should make this change in 0.90 > A concurrency issue on SoftValueSortedMap > ----------------------------------------- > > Key: HBASE-5088 > URL: https://issues.apache.org/jira/browse/HBASE-5088 > Project: HBase > Issue Type: Bug > Components: client > Affects Versions: 0.90.4, 0.94.0 > Reporter: Jieshan Bean > Assignee: Lars Hofhansl > Priority: Critical > Fix For: 0.92.0, 0.94.0 > > Attachments: 5088-final.txt, 5088-final2.txt, 5088-final3.txt, > 5088-syncObj.txt, 5088-useMapInterfaces.txt, 5088.generics.txt, > HBase-5088-90.patch, HBase-5088-trunk.patch, > HBase5088-90-replaceSoftValueSortedMap.patch, > HBase5088-90-replaceTreeMap.patch, HBase5088-trunk-replaceTreeMap.patch, > HBase5088Reproduce.java, PerformanceTestResults.png > > > SoftValueSortedMap is backed by a TreeMap. All the methods in this class are > synchronized. If we use this method to add/delete elements, it's ok. > But in HConnectionManager#getCachedLocation, it use headMap to get a view > from SoftValueSortedMap#internalMap. Once we operate > on this view map(like add/delete) in other threads, a concurrency issue may > occur. -- 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