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)