hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gary Helmling (JIRA)" <j...@apache.org>
Subject [jira] Created: (HBASE-3587) Eliminate use of ReadWriteLock in RegionObserver coprocessor invocation
Date Tue, 01 Mar 2011 22:51:36 GMT
Eliminate use of ReadWriteLock in RegionObserver coprocessor invocation
-----------------------------------------------------------------------

                 Key: HBASE-3587
                 URL: https://issues.apache.org/jira/browse/HBASE-3587
             Project: HBase
          Issue Type: Improvement
          Components: coprocessors
            Reporter: Gary Helmling


Follow-up to a discussion on the dev list: http://search-hadoop.com/m/jOovV1uAJBP

The CoprocessorHost ReentrantReadWriteLock is imposing some overhead on data read/write operations,
even when no coprocessors are loaded.  Currently execution of RegionCoprocessorHost pre/postXXX()
methods are guarded by acquiring the coprocessor read lock.  This is used to prevent coprocessor
registration from modifying the coprocessor collection while upcall hooks are in progress.

On further discussion, and looking at the locking in HRegion, it should be sufficient to just
use a CopyOnWriteArrayList for the coprocessor collection.  We can then remove the coprocessor
lock and eliminate the associated overhead without having to special case the "no loaded coprocessors"
condition.

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message