hbase-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ben Kim <benkimkim...@gmail.com>
Subject Re: Null rowkey with empty get operation
Date Tue, 29 May 2012 07:34:59 GMT
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 <anoopsj@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 [benkimkimben@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*

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message