[
https://issues.apache.org/jira/browse/HBASE-17045?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Duo Zhang updated HBASE-17045:
------------------------------
Attachment: HBASE-17045.patch
Add a limit option to Scan which means the limit of rows for this scan
operation.
RS will close the scanner and set moreResults to false when the number of rows
reaches the limit. Also did some refactoring when implementing the feature in
RSRpcServices.
In AsyncClientScanner, we will also fetch some cells when open scanner.
Remove smallScan methods in AsyncTableBase and remove all small scan related
code for asynchronous implementation. Add a scanAll method.
Deprecated setSmall and isSmall methods for Scan.
> Unify the implementation of small scan and regular scan
> -------------------------------------------------------
>
> Key: HBASE-17045
> URL: https://issues.apache.org/jira/browse/HBASE-17045
> Project: HBase
> Issue Type: Sub-task
> Components: Client, scan
> Affects Versions: 2.0.0, 1.4.0
> Reporter: Duo Zhang
> Fix For: 2.0.0
>
> Attachments: HBASE-17045.patch
>
>
> See [~enis]'s comment in HBASE-16838
> https://issues.apache.org/jira/browse/HBASE-16838?focusedCommentId=15637803&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-15637803
> But there is another scenario that we need small scan is that, we do not know
> the stop row but we only want a small set of results. For example, in the
> implementation of region locator, we will use small scan and set caching to 1
> as we only need one row.
> So I think we need to add a new option(maybe called limit?) for the scan
> object, and deprecate the small option. And the server side modification
> should also be committed to branch-1 to simplify the logic of async client in
> 2.0.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)