[
https://issues.apache.org/jira/browse/HBASE-2001?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12932285#action_12932285
]
HBase Review Board commented on HBASE-2001:
-------------------------------------------
Message from: [email protected]
bq. On 2010-10-05 23:10:58, stack wrote:
bq. > src/main/java/org/apache/hadoop/hbase/client/Action.java, line 30
bq. > <http://review.cloudera.org/r/876/diff/7/?file=14158#file14158line30>
bq. >
bq. > I took a look at the package-info.html. Very nice doc. One thought
though was that the batch methods do not seem to be instrumented. Are they?
The bulk of inserts are done by multiput now.
bq. >
bq. > Maybe link to the wiki page when you say this in package-info.html
'....implement role-based access control for HBase'
bq. >
bq. > Fix this 'These code will be triggerd with existing...'
bq. >
bq. > BaseRegionObserver as the name of the class that implements BOTH
Coprocessor and RegionObserver with sensible defaults seems off... it'd make
sense as the name of an implemenation of RegionObserver but not of both. Is
there a better name to give it -- even BaseRegionObserverCoprocessor? Unless
BaseObserver already implements Coprocessor?
bq. >
bq. > Should this also say that methods can be new also? '...i.e., you
can specify new passed parameters and return types for a method. '
bq. >
bq. > CommandTarget is a strange name for an host of arbitrary
user-designed methods. Can we come up w/ something more telling? Notions
that come to mind are Substrate, Platform -- i.e. stuff you build up on.
bq. >
bq. > Minor.. fix '...the actually implemention class running...'
bq. >
bq. > Fix this '...How is the client side example of calling...'
bq. >
bq. > The example is missing a bit of code that would help along its
illustration.... a few comments would help too.... but this is a minor
criticism. Not important. I get the gist (Folks interested in CP need to
start with this page -- it makes grokking the code the easier).
bq. >
bq. > This page would seem to indicate CPs can be chained. Am I reading
that wrong? (See 'Load from configuration') Over in Gary review, he was
saying on CP per region only.
bq. >
bq. >
bq. > Usually attribute names are upper-cased. Here we have
'Coprocessor$1' (that $1is intentional right?)
bq. >
bq. > This functionality, if its working, is amazing.
bq. >
bq. >
bq. >
bq.
bq. Mingjie Lai wrote:
bq. @stack:
bq. I didn't realize you posted a comment until last week, since your
comments here didn't get pushed to jira, neither emails sent to d...@hbase.
bq.
bq. Thanks for your comments. I will address them very soon. But before
that I'd like to finalize the name of ``CommandTarget'':
bq.
bq. You said, ``CommandTarget is a strange name for an host of arbitrary
user-designed methods. Can we come up w/ something more telling? Notions
that come to mind are Substrate, Platform -- i.e. stuff you build up on.''
bq.
bq. Some of us suggested to use ``Endpoint'' instead of CommandTarget. Do
you like it better? (I'm not really good at naming stuff)
bq.
bq. After finalizing the name, I will make the changes to both source code
and package-info. And post a patch here.
bq.
bq. Thanks,
bq. Mingjie
bq.
I'm not good at naming either.... Endpoint seems more 'generic', less loaded
than 'CommandTarget'. If you fellas working with this stuff think that a
better name then thats good by me.
- stack
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://review.cloudera.org/r/876/#review1438
-----------------------------------------------------------
> 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: Mingjie Lai
> Fix For: 0.92.0
>
> Attachments: asm-transformations.pdf,
> HBASE-2001-RegionObserver-2.patch, HBASE-2001-RegionObserver.patch,
> HBASE-2001.patch.gz, packge-info.html, packge-info.html, packge-info.html
>
>
> 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 HTableInterface 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: https://github.com/trendmicro/hbase/tree/coprocessor
> Please see the latest attached package-info.html for updated description.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.