[
https://issues.apache.org/jira/browse/HBASE-2001?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12873887#action_12873887
]
HBase Review Board commented on HBASE-2001:
-------------------------------------------
Message from: "Andrew Purtell" <[email protected]>
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://review.hbase.org/r/96/
-----------------------------------------------------------
(Updated 2010-05-31 22:47:25.650165)
Review request for hbase.
Summary
-------
This patch is the parts of the HBASE-2001 patch which implements support for
the RegionObserver interface. This enables extension of the regionserver
through stacking dynamically loaded classes i.e. from jars on HDFS onto upcalls
from HRegion. I made some improvements over the other patch and added a test
case. There are other parts of 2001 which need some thought and some work and
would not be useful without client side support. This is the part which could
be immediately useful.
Submitted for feedback.
Incorporates a user suggestion and Stack +1 about hooking compaction.
This addresses bug HBASE-2001.
http://issues.apache.org/jira/browse/HBASE-2001
Diffs (updated)
-----
src/main/java/org/apache/hadoop/hbase/coprocessor/Coprocessor.java
PRE-CREATION
src/main/java/org/apache/hadoop/hbase/coprocessor/RegionObserver.java
PRE-CREATION
src/main/java/org/apache/hadoop/hbase/regionserver/CoprocessorHost.java
PRE-CREATION
src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java 2413e98
src/main/java/org/apache/hadoop/hbase/regionserver/MinorCompactingStoreScanner.java
71f738e
src/main/java/org/apache/hadoop/hbase/regionserver/Store.java 515b42f
src/test/java/org/apache/hadoop/hbase/coprocessor/TestClassloading.java
PRE-CREATION
src/test/java/org/apache/hadoop/hbase/coprocessor/TestCoprocessorInterface.java
PRE-CREATION
src/test/java/org/apache/hadoop/hbase/coprocessor/TestRegionObserverInterface.java
PRE-CREATION
src/test/java/org/apache/hadoop/hbase/coprocessor/TestRegionObserverStacking.java
PRE-CREATION
Diff: http://review.hbase.org/r/96/diff
Testing
-------
All the new unit tests plus TestHRegion pass locally.
Thanks,
Andrew
> Coprocessors: Colocate user code with regions
> ---------------------------------------------
>
> Key: HBASE-2001
> URL: https://issues.apache.org/jira/browse/HBASE-2001
> Project: HBase
> Issue Type: Sub-task
> Reporter: Andrew Purtell
> Assignee: Andrew Purtell
> Attachments: asm-3.2-bin.zip, asm-transformations.pdf,
> HBASE-2001-RegionObserver.patch, HBASE-2001.patch.gz
>
>
> Support user code that runs run next to each region in table. As regions
> split and move, coprocessor code should automatically move also.
> Use classloader which looks on HDFS.
> Associate a list of classes to load with each table. Put this in HRI so it
> inherits from table but can be changed on a per region basis (so then those
> region specific changes can inherited by daughters).
> Not completely arbitrary code, should require implementation of an interface
> with callbacks for:
> * Open
> * Close
> * Split
> * Compact
> * (Multi)get and scanner next()
> * (Multi)put
> * (Multi)delete
> Add method to HRegionInterface for invoking coprocessor methods and
> retrieving results.
> Add methods in o.a.h.h.regionserver or subpackage which implement convenience
> functions for coprocessor methods and consistent/controlled access to
> internals: store access, threading, persistent and ephemeral state, scratch
> storage, etc.
> GitHub: http://github.com/apurtell/hbase-coprocessor
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.