[
https://issues.apache.org/jira/browse/HBASE-18747?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16201726#comment-16201726
]
Duo Zhang commented on HBASE-18747:
-----------------------------------
{quote}
So in order to do this should InternalScanner have some more APIs like seek(),
next(), peek() so that it gives more flexibility?
{quote}
No. For normal get and scan you can just use the Scan object to get a
RegionScanner which already has these stuffs, and also the powerful Filter to
do what ever you want.
The InternalScanner wrapper is only supposed to be used in flush and compaction
where it is dangerous to add a filter to the SQM as our correctness high
depends on the logic in SQM.
Thanks.
> Introduce new example and helper classes to tell CP users how to do filtering
> on scanners
> -----------------------------------------------------------------------------------------
>
> Key: HBASE-18747
> URL: https://issues.apache.org/jira/browse/HBASE-18747
> Project: HBase
> Issue Type: Sub-task
> Components: Coprocessors
> Reporter: Duo Zhang
> Assignee: Duo Zhang
> Priority: Critical
> Fix For: 2.0.0-alpha-4
>
> Attachments: HBASE-18747.patch
>
>
> Finally we decided that CP users should not have the ability to create
> {{StoreScanner}} or {{StoreFileScanner}}, so it is impossible for them to
> filter out some cells when flush or compaction by simply provide a filter
> when constructing {{StoreScanner}}.
> But I think filtering out some cells is a very important usage for CP users,
> so we need to provide the ability in another way. Theoretically it can be
> done with wrapping an {{InternalScanner}}, but I think we need to give an
> example, or even some helper classes to help CP users.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)