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)

Reply via email to