Hi, Thanks very much.
I applied the patch and the RowFilter seem to be initially working.
But, I have seem to come across another problem now.
Filters only compare against the most recent version's values. Is this correct?
For example, let's say I have a row with 3 versions:
hbase(main):004:0> get 'Data', 'abc', {COLUMNS=>'x:y', VERSIONS=>3}
timestamp=124380366942072, value=xxx
timestamp=124380364890514, value=yyy
timestamp=124380364491516, value=zzz
Now, I want to be able to use a SingleColumnValueFilter on 'x:y' to
find the value 'zzz'.
It seems I can only test against the latest version 'xxx'.
Sample code:
Filter f = new SingleColumnValueFilter(Bytes.toBytes("x"),
Bytes.toBytes("y"), CompareOp.EQUAL, new SubstringComparator("zzz"));
This will not find anything.
Is this the intended behavior or am I doing something wrong?
Thanks again
J
On Wed, Sep 30, 2009 at 6:00 PM, Daniel Ploeg <[email protected]> wrote:
> Looks like your running into the issue described in this jira:
>
> https://issues.apache.org/jira/browse/HBASE-1828
>
> On Thu, Oct 1, 2009 at 5:52 AM, Bluemetrix Development <
> [email protected]> wrote:
>
>> Hello,
>> I am trying to use a RowFilter and continue to get the following error:
>>
>> Exception in thread "main"
>> org.apache.hadoop.hbase.client.RetriesExhaustedException: Trying to
>> contact region server 127.0.0.1:54441 for region
>> TableData,,1254329413425, row '', but failed after 10 attempts.
>> Exceptions:
>> java.io.IOException: Call to /127.0.0.1:54441 failed on local
>> exception: java.io.EOFException
>> java.io.IOException: Call to /127.0.0.1:54441 failed on local
>> exception: java.io.EOFException
>> java.io.IOException: Call to /127.0.0.1:54441 failed on local
>> exception: java.io.EOFException
>> ...
>>
>> Here is the code:
>>
>> HBaseConfiguration conf = new HBaseConfiguration();
>> HTable table = new HTable(conf, tableName);
>> Scan scan = new Scan();
>> scan.setMaxVersions();
>> scan.setTimeRange(timeStart, timeEnd);
>> RowFilter rf = new RowFilter(CompareOp.EQUAL, new
>> SubstringComparator("abc"));
>> scan.setFilter(rf);
>> ResultScanner scanner = table.getScanner(scan);
>>
>> I've never came across this before until I started trying to use
>> RowFilter. And if I comment out the setFilter function, there is no
>> longer a problem. Actually, I get the exact same error for any type of
>> Filter I attempt to use. I'm using 0.20 on a pseudo-dist setup -
>> standard config as in the Getting Started docs. Any ideas on this? Am
>> I using the Filter correctly?
>>
>> Thanks
>> J
>>
>