hbase-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Seibold <seib...@in.tum.de>
Subject HBase: scanner with custom filter - filterRowKey: rowKey == null
Date Tue, 03 Mar 2009 13:04:16 GMT
Hi,

I'm not sure how the method filterRowKey(byte[] rowKey) of the
RowFilterInterface works.

I have the feeling that this method may be called with null as parameter
by HBase. When is the rowKey Parameter null and why?

I have used the following custom filter to verify this:

public class HFilter implements RowFilterInterface {

	public HFilter() {
		
	}

	public boolean filterRowKey(byte[] rowKey) {
		if (rowKey == null) {
			throw new RuntimeException("rowKey == null");
		}
		return false;
	}
}

After a while I get the following exception:

192.168.0.11:32806: error: java.io.IOException:
java.lang.RuntimeException: rowKey == null
java.io.IOException: java.lang.RuntimeException: rowKey == null
        at
org.apache.hadoop.hbase.regionserver.HRegionServer.convertThrowableToIOE(HRegionServer.java:687)
        at
org.apache.hadoop.hbase.regionserver.HRegionServer.convertThrowableToIOE(HRegionServer.java:677)
        at
org.apache.hadoop.hbase.regionserver.HRegionServer.next(HRegionServer.java:1586)
        at sun.reflect.GeneratedMethodAccessor17.invoke(Unknown Source)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

I tried this with HBase 0.19.0 and HDFS (Hadoop 0.19.0) running together
on 1 server.

That's why I got the feeling that the method filterRowKey may be called
with null as parameter by HBase. I don't understand why this should
happen. Is null a special case that I have to handle in this method?

Kind regards,
Michael


Mime
View raw message