[
https://issues.apache.org/jira/browse/HBASE-15921?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15501429#comment-15501429
]
Yu Li commented on HBASE-15921:
-------------------------------
Thanks for the reference here [~Apache9], and sorry for the late response
(don't want to use 11-11 as excuse but really kind of exhausted preparing for
it...)
I've noticed that there're some good refactoring work done recently on the
RpcClient part, so I need some more time to do some code rebase and give some
brief demo later (I think some demo codes would help to understand than simply
words.:-)).
Basically, our implementation based on PB's {{RpcCallback}} interface, but to
be honest, we don't take much consideration of region replica part for now
especially for the batch request. And we support callback and future separately
rather than a mature interface like ListenableFuture or CompletableFuture. So I
believe there're still quite some discussion in need but I'll supply a simple
demo first, ASAP.
I've also noticed the work [~chenheng] is doing about unifying all operations
into AsyncProcess, but when I did the async table implementation based on
branch-1, I truly found AsyncProcess complicated and hard to coordinate all
async logic in, so I guess we need more discussion here also. Anyway, let me
prepare the sample patch first.
> Add first AsyncTable impl and create TableImpl based on it
> ----------------------------------------------------------
>
> Key: HBASE-15921
> URL: https://issues.apache.org/jira/browse/HBASE-15921
> Project: HBase
> Issue Type: Improvement
> Reporter: Jurriaan Mous
> Assignee: Jurriaan Mous
> Attachments: HBASE-15921.patch, HBASE-15921.v1.patch
>
>
> First we create an AsyncTable interface with implementation without the Scan
> functionality. Those will land in a separate patch since they need a refactor
> of existing scans.
> Also added is a new TableImpl to replace HTable. It uses the AsyncTableImpl
> internally and should be a bit faster because it does jump through less hoops
> to do ProtoBuf transportation. This way we can run all existing tests on the
> AsyncTableImpl to guarantee its quality.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)