[
https://issues.apache.org/jira/browse/HBASE-5088?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13181515#comment-13181515
]
Lars Hofhansl edited comment on HBASE-5088 at 1/6/12 7:00 PM:
--------------------------------------------------------------
I think we should check in the latest change. Since we cannot reliably
reproduce the issue, we have to verify by inspection. The latest change
(5088-syncObject.txt) will be least amount of change from the original code and
adds the least extra synchronization needed.
I'll fix up the patch slightly (pull in the interface cleanups from my other
patch).
Ted, Stack, etc, please weigh in.
was (Author: lhofhansl):
I think we should check in the latest change. Since we cannot reliably
reproduce the issue, we have verify by inspection. The latest change
(5088-syncObject.txt) will be least amount of change from the original code and
adds the lowest least extra synchronization needed.
I'll fix up the patch slightly (pull in the interface cleanups from my other
patch).
Ted, Stack, etc, please weigh in.
> 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: Jieshan Bean
> Priority: Critical
> Fix For: 0.92.0, 0.90.6
>
> Attachments: 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