[
https://issues.apache.org/jira/browse/HBASE-10205?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14088804#comment-14088804
]
Hudson commented on HBASE-10205:
--------------------------------
SUCCESS: Integrated in HBase-0.98-on-Hadoop-1.1 #414 (See
[https://builds.apache.org/job/HBase-0.98-on-Hadoop-1.1/414/])
HBASE-10205 ConcurrentModificationException in BucketAllocator (Arjen
Roodselaar and Chunhui Shen) (stack: rev
2c55970ed3de5dac551d8eaa5e2914c18d814962)
*
hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/BucketAllocator.java
*
hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/BucketCache.java
> ConcurrentModificationException in BucketAllocator
> --------------------------------------------------
>
> Key: HBASE-10205
> URL: https://issues.apache.org/jira/browse/HBASE-10205
> Project: HBase
> Issue Type: Bug
> Components: regionserver
> Affects Versions: 0.89-fb
> Reporter: Arjen Roodselaar
> Assignee: Arjen Roodselaar
> Priority: Minor
> Fix For: 0.89-fb, 0.99.0, 2.0.0, 0.98.6
>
> Attachments: hbase-10205-trunk.patch
>
>
> 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 over 'bucketList'. At the same time another WriterThread might
> call BucketAllocator.allocateBlock(), which may call
> BucketSizeInfo.allocateBlock(), 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.2#6252)