hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "stack (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-17346) Add coprocessor service support
Date Thu, 19 Jan 2017 06:39:27 GMT

    [ https://issues.apache.org/jira/browse/HBASE-17346?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15829399#comment-15829399

stack commented on HBASE-17346:


Having a bit of trouble getting my head around it.

You expose more than what sync Table does.

I'm having trouble following this:

+    table.coprocessorService(channel -> AggregateService.newStub(channel),
+      (stub, controller, done) -> stub.getMax(controller, req, done), scan.getStartRow(),
+      scan.includeStartRow(), scan.getStopRow(), scan.includeStopRow(), callback);
+    return future;

The channel and controller we get from where? Ditto 'done' I don't see them in the aggregation

And then that AggregateService.newStub(channel) is a 'stubmaker' of this form: Function<RpcChannel,
S> stubMaker

Name ClientCoprocessorRpcController more generic than ClientCoprocessorRpcController  I thought
we'd made a basic RpcController in a few places in tests but looks like it is only the AggregationClientRpcController
which looks like this (except it does 'cancel'...)....Name it BasicRpcController or SimpleRpcController
since can be used for more than just CP?

This is nice:


We have to expose RpcController in method signature?  We can't keep it internal? You thinking
we'd expose the cancel/failed functionality via this RpcController?  Doesn't user have the
CompleteableFuture to get this stuff out of the invocation? 

You don't need PayloadCarryingRpcController here, right...

So, the onRegionComplete and onComplete...  in CoprocessorCallback.... whats the diff? You
get notification on completion of each of these steps?

Pardon dumb questions...

> Add coprocessor service support
> -------------------------------
>                 Key: HBASE-17346
>                 URL: https://issues.apache.org/jira/browse/HBASE-17346
>             Project: HBase
>          Issue Type: Sub-task
>          Components: asyncclient, Client, Coprocessors
>    Affects Versions: 2.0.0
>            Reporter: Duo Zhang
>            Assignee: Duo Zhang
>             Fix For: 2.0.0
>         Attachments: 17346.suggestion.txt, HBASE-17346.patch, HBASE-17346-v1.patch
> I think we need to redesign the API.

This message was sent by Atlassian JIRA

View raw message