在扫描HBase表时随机获取一个奇怪的NullPointerException。这是示例代码:
try (final ResultScanner scanner = table.getScanner(scan)) {
Result res;
while ((res = scanner.next()) != null) {
...
}
对于scanner.next(),当我在很短的时间内针对SAME表触发多个查询时,我得到以下异常。相同的代码在正常情况下工作,也就是说,当我没有针对任何表格发出太多请求时。
02:37:29,461 ERROR Executor:96 - 阶段1.0中任务0.0的异常 (TID 1)530967java.lang.NullPointerException at org.apache.hadoop.hbase.client.ScannerCallableWithReplicas.setClose(ScannerCallableWithReplicas.java:101) 在 org.apache.hadoop.hbase.client.ClientScanner.nextScanner(ClientScanner.java:251) 在 org.apache.hadoop.hbase.client.ClientScanner.possiblyNextScanner(ClientScanner.java:235) 在 org.apache.hadoop.hbase.client.ClientScanner.loadCache(ClientScanner.java:524) 在 org.apache.hadoop.hbase.client.ClientScanner.next(ClientScanner.java:358) 在
... 19 more
我尝试增加租约期,RPC超时,甚至区域服务器IPC读取线程池大小。除过期租约外,HBase日志中没有特定错误。我在CDH 5.5上。