[ 
https://issues.apache.org/jira/browse/HBASE-16729?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15571260#comment-15571260
 ] 

ChiaPing Tsai commented on HBASE-16729:
---------------------------------------

{noformat}
Why this change now? And why is the generic <Filter> removed now ?
{noformat}
Make the inner list unchangeable for preventing the unsafe modification. For 
example, user can add a filter to the list without checking the "Reversed".

{noformat}
Pls mark this as an incompatible change. I think with isFamilyEssential etc. we 
may have compatibility issue if suppose some one is creating an empty list. But 
anyway am not sure if that is a right way to use filters.
{noformat}
Instead of any change, we can just add enough comments to explain the empty 
FilterList. It seems to me that the issue of empty FilterList is the 
inconsistent result(see 
[HBASE-16731|https://issues.apache.org/jira/browse/HBASE-16731]).

Thanks.

> Define the behavior of (default) empty FilterList
> -------------------------------------------------
>
>                 Key: HBASE-16729
>                 URL: https://issues.apache.org/jira/browse/HBASE-16729
>             Project: HBase
>          Issue Type: Wish
>            Reporter: ChiaPing Tsai
>            Assignee: ChiaPing Tsai
>            Priority: Trivial
>         Attachments: HBASE-16729.v0.patch
>
>
> Current empty FilterList filters all data, because the 
> FilterList#isFamilyEssential always returns false which causes the null cell 
> retrieved by RegionScannerImpl.storeHeap.
> It seems to me that empty FilterList should do nothing, because the following 
> code is common.
> {noformat}
> private static Filter makeFilter() {
>   FilterList filterList = new FilterList ();
>   for (some conditions) {
>     // add some filters. Or nothing to add.
>   }
>   return filterList;
> }
> {noformat}
> If we keep the current logic which filters all data, we should add enough 
> comments to explain it. Or add the FilterList#size() or FilterList#empty() 
> for preventing filtering all data.
> Any comments? Thanks.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to