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] [Updated] (HBASE-3587) Eliminate use of ReadWriteLock in RegionObserver coprocessor invocation
Date Thu, 07 Apr 2011 00:02:06 GMT

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

Gary Helmling updated HBASE-3587:

    Attachment: HBASE-3587.patch

Patch 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

View raw message