Hi
    Now it is a bit different case of consideration.  As of now you need to 
deal with your input rowkeys and rowkeys that you get from the Results.  
empty rows = input rowkeys - rowkeys from result

As Lars said you might need to check with isEmpty() on every Result or null 
check on result.getRow ().  Agree that this wont be straight forward 
considering the app code.

-Anoop-
________________________________________
From: Ben Kim [benkimkim...@gmail.com]
Sent: Tuesday, May 29, 2012 1:04 PM
To: user@hbase.apache.org
Subject: Re: Null rowkey with empty get operation

Maybe I showed you a bad example. This makes more sense when it comes to
using List<Get>
For instance,

List<Get> gets = new ArrayList();
for(String rowkey : rowkeys){
  Get get = new Get(Bytes.toBytes(rowkey));
  get.addFamily(family);
  Filter filter = new QualifierFilter(CompareOp.NOT_EQUAL, new
BinaryComparator(item));
  get.setFilter(filter);
  gets.add(get);
}
Result[] results = table.get(get);

Now I have multiple results, I need to find the rowkey of the result that
has no keyvalue.
but results[0].getRow() is null if results[0] has no keyvalue.  so it's
hard to derive which row the empty result belongs to :(

Thank you for your response,
Ben



On Tue, May 29, 2012 at 2:33 PM, Anoop Sam John <anoo...@huawei.com> wrote:

> Hi Ben,
>      In HBase rowkey exists with KVs only. As in your case there is no KVs
> in the result, and so no rowkey. What is the use case that you are
> referring here? When you issued Get with a rowkey and empty result for that
> , you know the rowkey already right? I mean any specific reason why you try
> to find the rowkey from the result object?
>
> -Anoop-
>
> ________________________________________
> From: Ben Kim [benkimkim...@gmail.com]
> Sent: Tuesday, May 29, 2012 6:42 AM
> To: user@hbase.apache.org
> Subject: Null rowkey with empty get operation
>
> I have following Get code with HBase 0.92.0
>
> Get get = new Get(Bytes.toBytes(rowkey));
> get.addFamily(family);
> Filter filter = new QualifierFilter(CompareOp.NOT_EQUAL, new
> BinaryComparator(item));
> get.setFilter(filter);
> Result r = table.get(get);
>
> System.out.println(r);  // (1) prints "keyvalues=NONE"
> System.out.println(Bytes.toString(r.getRow()));  // (2) throws
> NullpointerException
>
>
>
> printing out the result shows that all columns in a row was filtered out.
> but i still want to print out the row key of the empty result.
> But the value of r.getRow() is null
>
> Shouldn't r.getRow() return the rowkey even if the keyvalues are emtpy?
>
>
> --
>
> *Benjamin Kim**
> benkimkimben at gmail*
>



--

*Benjamin Kim*
**Mo : +82 10.5357.0521*
benkimkimben at gmail*

Reply via email to