[ 
https://issues.apache.org/jira/browse/HBASE-3587?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Gary Helmling resolved HBASE-3587.
----------------------------------

       Resolution: Fixed
    Fix Version/s: 0.92.0

Committed to trunk

> 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
>            Assignee: Gary Helmling
>             Fix For: 0.92.0
>
>         Attachments: HBASE-3587.patch
>
>
> 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