[ 
https://issues.apache.org/jira/browse/HBASE-3587?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13001166#comment-13001166
 ] 

ryan rawson commented on HBASE-3587:
------------------------------------

+1
http://search-hadoop.com/m/jOovV1uAJBP
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.
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.


> 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

        

Reply via email to