[
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)