Hi,

I'm testing AggregationClient functions to check if we could use coprocessors 
for mathematical functions.

The code I use is the following :

package coreprocessor;

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HBaseConfiguration;
import org.apache.hadoop.hbase.client.Scan;
import org.apache.hadoop.hbase.client.coprocessor.AggregationClient;
import org.apache.hadoop.hbase.util.Bytes;

public class AggregationClientTest {

   private static final byte[] TABLE_NAME = Bytes.toBytes("ise");
   private static final byte[] CF = Bytes.toBytes("core");

   public static void main(String[] args) throws Throwable {
      
       Configuration configuration = HBaseConfiguration.create();

       configuration.setLong("hbase.client.scanner.caching", 1000);
       AggregationClient aggregationClient = new AggregationClient(
               configuration);
       Scan scan = new Scan();
       scan.addColumn(CF, Bytes.toBytes("value"));
       System.out.println("row count is " + 
aggregationClient.rowCount(TABLE_NAME, null, scan));
       System.out.println("avg is " + aggregationClient.avg(TABLE_NAME, null, 
scan));
       System.out.println("sum is " + aggregationClient.sum(TABLE_NAME, null, 
scan));
   }
}

The only one working is the rowCount function. For others I get a NPE error !
I've checked that my table use only Long values for the column on which I work, 
and I've only one row in my table :

ROW                                                  COLUMN+CELL                
                                                                                
                                            
 id-cyr1                                             column=core:value, 
timestamp=1343596419845, value=\x00\x00\x00\x00\x00\x00\x00\x0A                 
                                                    

The only thing I can add is that my hbase server's version is 0.94.0 and that I 
use version 0.92.0 of the hbase jar

any idea why it doesn't work ?

thanks 
Cyril SCETBON

Reply via email to