You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Gary Helmling (JIRA)" <ji...@apache.org> on 2011/04/06 23:52:05 UTC
[jira] [Commented] (HBASE-3587) Eliminate use of ReadWriteLock in
RegionObserver coprocessor invocation
[ https://issues.apache.org/jira/browse/HBASE-3587?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13016566#comment-13016566 ]
Gary Helmling commented on HBASE-3587:
--------------------------------------
Posted patch for review at: https://review.cloudera.org/r/1681/
> 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
>
> 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