Hey Michael,

If hbase-2037 will make it into 0.20.3, I am fine.
If not, I would greatly appreciate you breaking it out for 0.20.3.

Thanks,
Paul



On Dec 15, 2009, at 10:28 PM, stack wrote:

> Paul:
> 
> I can apply the fix from hbase-2037... I can break it out of the posted
> patch thats up there.  Just say the word.
> 
> St.Ack
> 
> 
> On Tue, Dec 15, 2009 at 4:17 PM, Ram Kulbak <ram.kul...@gmail.com> wrote:
> 
>> Hi Paul,
>> 
>> I've encountered the same problem. I think its fixed as part of
>> https://issues.apache.org/jira/browse/HBASE-2037
>> 
>> Regards,
>> Yoram
>> 
>> 
>> 
>> On Wed, Dec 16, 2009 at 10:45 AM, Paul Ambrose <pambr...@mac.com> wrote:
>> 
>>> I ran into some problems with FilterList and SingleColumnValueFilter.
>>> 
>>> I created a FilterList with MUST_PASS_ONE and two
>> SingleColumnValueFilters
>>> (each testing equality on a different columns) and query some trivial
>> data:
>>> 
>>> http://pastie.org/744890
>>> 
>>> The problem that I encountered were two-fold:
>>> 
>>> SingleColumnValueFilter.filterKeyValues() returns ReturnCode.INCLUDE
>>> if the column names do not match. If FilterList is employed, then when
>> the
>>> first Filter returns INCLUDE (because the column names do not match), no
>>> more filters for that KeyValue are evaluated.  That is problematic
>> because
>>> when filterRow() is finally called for those filters, matchedColumn is
>>> never
>>> found to be true because they were not invoked (due to FilterList exiting
>>> from
>>> the filterList iteration when the name mismatched INCLUDE was returned).
>>> The fix (at least for this scenario) is for
>>> SingleColumnValueFilter.filterKeyValues() to
>>> return ReturnCode.NEXT_ROW (rather than INCLUDE).
>>> 
>>> The second problem is at the bottom of FilterList.filterKeyValue()
>>> where ReturnCode.SKIP is returned if MUST_PASS_ONE is the operator,
>>> rather than always returning ReturnCode.INCLUDE and then leaving the
>>> final filter decision to be made by the call to filterRow().   I am sure
>>> there is a good
>>> reason for returning SKIP in other scenarios, but it is problematic in
>>> mine.
>>> 
>>> Feedback would be much appreciated.
>>> 
>>> Paul
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>> 

Reply via email to