You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "stack (JIRA)" <ji...@apache.org> on 2008/08/30 01:01:44 UTC

[jira] Commented: (HBASE-856) Data inserted into tables is not immidiately visible in the scanner with row filter

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

stack commented on HBASE-856:
-----------------------------

How big are your regions?

You could try changing this line:
{code}
	Scanner scanner = table.getScanner(new String[]{"data:test"}, "a",new Date().getTime(), new StopRowFilter("z".getBytes(HConstants.UTF8_ENCODING)));
{code}

Have the scan start on the row you inserted.  Then, pass the same key to an instance of  InclusiveStopRowFilter (InclusiveStopRowFilter will stop at the row after the provided row rather than AT the supplied row).

My guess is that your regions are largish and there is a bunch of scanning before and after newly inserted row.

> Data inserted into tables is not immidiately visible in the scanner with row filter
> -----------------------------------------------------------------------------------
>
>                 Key: HBASE-856
>                 URL: https://issues.apache.org/jira/browse/HBASE-856
>             Project: Hadoop HBase
>          Issue Type: Bug
>          Components: filters
>    Affects Versions: 0.2.0
>         Environment: 3 Region servers on different machines one of them running Master too. Ubuntu 8.04 server. Hadoop 0.17.2
>            Reporter: Krzysiek Szlapinski
>         Attachments: DelayTest.java
>
>
> When data is inserted into Region that is on the different machine than the Master it is not immidiately available in the scanner that is using RowFilter
> Here is the output of the test case on 3 nodes (tmptable_0 and tmptable_2 were placed on the region servers that are not running master server).
> ---------------DelayTest----------------
> table tmptable_0 created
> table tmptable_1 created
> table tmptable_2 created
> ***********************************
> table tmptable_0 test start
> inserting some sample data into random row id (aaaaa-2108369209)
> inserted
> testing if the new row is available through get method
> confirming that data:test value = test of row aaaaa-2108369209 is available
> testing if the new row is available through scanner with filter
> ...................................
> the new row has been found within 35 seconds
> table tmptable_0 test finish
> ***********************************
> ***********************************
> table tmptable_1 test start
> inserting some sample data into random row id (aaaaa-20410017)
> inserted
> testing if the new row is available through get method
> confirming that data:test value = test of row aaaaa-20410017 is available
> testing if the new row is available through scanner with filter
> the new row has been found within 0 seconds
> table tmptable_1 test finish
> ***********************************
> ***********************************
> table tmptable_2 test start
> inserting some sample data into random row id (aaaaa1756705479)
> inserted
> testing if the new row is available through get method
> confirming that data:test value = test of row aaaaa1756705479 is available
> testing if the new row is available through scanner with filter
> ....................
> the new row has been found within 20 seconds
> table tmptable_2 test finish
> ***********************************
> ---------------DONE----------------

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.