[
https://issues.apache.org/jira/browse/HBASE-16838?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15603006#comment-15603006
]
stack commented on HBASE-16838:
-------------------------------
bq. The reason why we introduce a small scan is that we want to get the whole
result with one rpc call, so I think it is reasonable to have the same API with
get?
That seems reasonable. Just seems weird having two ways to do a Scan, one way
when small and another when not-small. The method should be called smallScan?
Or do you think that the the API with a return that is a CompletableFuture is
indicator enough that this is a short-lived Scan? Maybe it is.
bq. So I think a scan method that returns the whole results is acceptable?
You mean a whole region's worth of results or you mean the batch? If the
former, no, we should not return whole regions' worth (I don't think you meant
this) and if the latter, where is the user getting an Async API? They have to
block even though the Scan maybe returning them chunks of the Scan or later, we
could be streaming Cells back to the API. CompleteableFuture is all or nothing
with its Done? There is no way to get out Cell at a time? Is that a different
API?
On AsyncResultScanner,
https://github.com/jurmous/async-hbase-client/blob/master/src/main/java/org/apache/hadoop/hbase/client/AsyncResultScanner.java,
there is a use case where you'd want to perhaps prefetch or do parallel
non-sequenced access to a Scan but that'd be tough since we don't know where
the next 'next' should start till the currently running one has returned.
Thanks for turning up AsyncResultScanner. I don't think it applicable given
where we are now after changes you've done [~Apache9]
> Implement scan
> --------------
>
> Key: HBASE-16838
> URL: https://issues.apache.org/jira/browse/HBASE-16838
> Project: HBase
> Issue Type: Sub-task
> Affects Versions: 2.0.0
> Reporter: Duo Zhang
> Assignee: Duo Zhang
> Fix For: 2.0.0
>
> Attachments: HBASE-16838.patch
>
>
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)