hbase查询超时导致的错误
今天上线跑一个hbase程序出现如下错误:
org.apache.hadoop.hbase.regionserver.LeaseException: org.apache.hadoop.hbase.regionserver.LeaseException: lease '5008606692699215376' does not exist
?
问题解决
HBase 客户端调用建立在由Socket+反射组成的Hadoop RPC调用的基础上;
客户端主要接口是HTable和HBaseAdmin,均是建立在HConnection接口实现类HConnectionImplementation上,
由HConnectionImplementation维持到HMaster,HRegionServer,Zookeeper各个服务端进程的连接;
这里主要的连接是到HMaster,HRegionServer的连接:这里是建立在上面的RPC基础上的
简单起见 优化 改小这些默认参数:
hbase.client.retries.number=3 ? ? 默认10
hbase.client.pause=100 ? ? 默认 1000
hbase.rpc.timeout=6000 ? 默认60000
hbase.client.operation.timeout=6000 ?默认Integer.MAX_VALUE
?
?