You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Stefan Seelmann (JIRA)" <ji...@apache.org> on 2010/11/03 21:40:25 UTC
[jira] Created: (HBASE-3191) FilterList with MUST_PASS_ONE and SCVF
isn't working
FilterList with MUST_PASS_ONE and SCVF isn't working
----------------------------------------------------
Key: HBASE-3191
URL: https://issues.apache.org/jira/browse/HBASE-3191
Project: HBase
Issue Type: Bug
Components: filters
Affects Versions: 0.89.20100924, 0.90.0
Reporter: Stefan Seelmann
Priority: Minor
In a special case the FilterList with MUST_PASS_ONE operator doesn't work correctly:
- a filter in the list is a SingleColumValueFilter with filterIfMissing=true
- FilterList.filterKeyValue(KeyValue) is called
- SingleColumValueFilter.filterKeyValue(KeyValue) is called
- SingleColumValueFilter.filterKeyValue(KeyValue) returns ReturnCode.INCLUDE if the KeyValue doesn't match a column (to support filterIfMissing)
- FilterList.filterKeyValue(KeyValue) immediately returns ReturnCode.INCLUDE, remaining filters in the list aren't evaluated.
However it is required to evaluate remaining filters, otherwise filterRow() filters out rows in case the filter's filterKeyValue() saves state that is used by filterRow(). (SingleColumValueFilter, SkipFilter, WhileMatchFilter do so)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HBASE-3191) FilterList with MUST_PASS_ONE and SCVF
isn't working
Posted by "Stefan Seelmann (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-3191?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Stefan Seelmann updated HBASE-3191:
-----------------------------------
Attachment: HBASE-3191.patch
Patch with Test
> FilterList with MUST_PASS_ONE and SCVF isn't working
> ----------------------------------------------------
>
> Key: HBASE-3191
> URL: https://issues.apache.org/jira/browse/HBASE-3191
> Project: HBase
> Issue Type: Bug
> Components: filters
> Affects Versions: 0.89.20100924, 0.90.0
> Reporter: Stefan Seelmann
> Priority: Minor
> Attachments: HBASE-3191.patch
>
>
> In a special case the FilterList with MUST_PASS_ONE operator doesn't work correctly:
> - a filter in the list is a SingleColumValueFilter with filterIfMissing=true
> - FilterList.filterKeyValue(KeyValue) is called
> - SingleColumValueFilter.filterKeyValue(KeyValue) is called
> - SingleColumValueFilter.filterKeyValue(KeyValue) returns ReturnCode.INCLUDE if the KeyValue doesn't match a column (to support filterIfMissing)
> - FilterList.filterKeyValue(KeyValue) immediately returns ReturnCode.INCLUDE, remaining filters in the list aren't evaluated.
> However it is required to evaluate remaining filters, otherwise filterRow() filters out rows in case the filter's filterKeyValue() saves state that is used by filterRow(). (SingleColumValueFilter, SkipFilter, WhileMatchFilter do so)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Resolved: (HBASE-3191) FilterList with MUST_PASS_ONE and
SCVF isn't working
Posted by "stack (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-3191?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
stack resolved HBASE-3191.
--------------------------
Resolution: Fixed
Fix Version/s: 0.90.0
Hadoop Flags: [Reviewed]
Committed to TRUNK. Thank you for the patch Stefan.
> FilterList with MUST_PASS_ONE and SCVF isn't working
> ----------------------------------------------------
>
> Key: HBASE-3191
> URL: https://issues.apache.org/jira/browse/HBASE-3191
> Project: HBase
> Issue Type: Bug
> Components: filters
> Affects Versions: 0.89.20100924, 0.90.0
> Reporter: Stefan Seelmann
> Priority: Minor
> Fix For: 0.90.0
>
> Attachments: HBASE-3191.patch
>
>
> In a special case the FilterList with MUST_PASS_ONE operator doesn't work correctly:
> - a filter in the list is a SingleColumValueFilter with filterIfMissing=true
> - FilterList.filterKeyValue(KeyValue) is called
> - SingleColumValueFilter.filterKeyValue(KeyValue) is called
> - SingleColumValueFilter.filterKeyValue(KeyValue) returns ReturnCode.INCLUDE if the KeyValue doesn't match a column (to support filterIfMissing)
> - FilterList.filterKeyValue(KeyValue) immediately returns ReturnCode.INCLUDE, remaining filters in the list aren't evaluated.
> However it is required to evaluate remaining filters, otherwise filterRow() filters out rows in case the filter's filterKeyValue() saves state that is used by filterRow(). (SingleColumValueFilter, SkipFilter, WhileMatchFilter do so)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.