You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "Arjen Roodselaar (JIRA)" <ji...@apache.org> on 2013/12/19 03:56:08 UTC
[jira] [Created] (HBASE-10205) ConcurrentModificationException in
BucketAllocator
Arjen Roodselaar created HBASE-10205:
----------------------------------------
Summary: ConcurrentModificationException in BucketAllocator
Key: HBASE-10205
URL: https://issues.apache.org/jira/browse/HBASE-10205
Project: HBase
Issue Type: Bug
Affects Versions: 0.89-fb
Reporter: Arjen Roodselaar
Assignee: Arjen Roodselaar
Priority: Minor
Fix For: 0.89-fb
The BucketCache WriterThread calls BucketCache.freeSpace() upon draining the RAM queue containing entries to be cached. freeSpace() in turn calls BucketSizeInfo.statistics() through BucketAllocator.getIndexStatistics(), which iterates 'bucketList'. At the same time another WriterThread might call BucketAllocator.allocateBlock(), which may call BucketSizeInfo.allocate() and add a bucket to 'bucketList' and consequently cause a ConcurrentModificationException. Calls to BucketAllocator.allocateBlock() are synchronized, but calls to BucketAllocator.getIndexStatistics() are not, which allows this race to occur.
--
This message was sent by Atlassian JIRA
(v6.1.4#6159)