Hbase客户端RPC超时 [英] Hbase Client RPC Timeout

查看:1026
本文介绍了Hbase客户端RPC超时的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在运行Hbase 1.0.1 / Hadoop 2.5.2。我试图在桌面上运行扫描,但我得到RPC超时。

I'm running Hbase 1.0.1/Hadoop 2.5.2. I'm trying to run a scan on a table but I'm getting RPC timeouts.

我已经将Hbase RPC超时更改为2分钟,我可以确认frm用户界面......

I've changed the Hbase RPC timeout to 2 minutes which I can confirm frm the UI...

<property>
  <name>hbase.rpc.timeout</name>
  <value>120000</value>
  <source>hbase-site.xml</source>
</property>

...但是我的客户仍然在60s后超时......

... but my client is still timing out after 60s...

Caused by: java.io.IOException: Call to xxxxxxx/172.16.5.13:16020 failed on local exception: org.apache.hadoop.hbase.ipc.CallTimeoutException: Call id=2968, waitTime=60001, operationTimeout=60000 expired.
    at org.apache.hadoop.hbase.ipc.RpcClientImpl.wrapException(RpcClientImpl.java:1235)
    at org.apache.hadoop.hbase.ipc.RpcClientImpl.call(RpcClientImpl.java:1203)
    at org.apache.hadoop.hbase.ipc.AbstractRpcClient.callBlockingMethod(AbstractRpcClient.java:216)
    at org.apache.hadoop.hbase.ipc.AbstractRpcClient$BlockingRpcChannelImplementation.callBlockingMethod(AbstractRpcClient.java:300)
    at org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$BlockingStub.scan(ClientProtos.java:31751)
    at org.apache.hadoop.hbase.client.ScannerCallable.call(ScannerCallable.java:199)
    at org.apache.hadoop.hbase.client.ScannerCallable.call(ScannerCallable.java:62)
    at org.apache.hadoop.hbase.client.RpcRetryingCaller.callWithRetries(RpcRetryingCaller.java:126)
    ... 6 more
Caused by: org.apache.hadoop.hbase.ipc.CallTimeoutException: Call id=2968, waitTime=60001, operationTimeout=60000 expired.
    at org.apache.hadoop.hbase.ipc.Call.checkAndSetTimeout(Call.java:70)
    at org.apache.hadoop.hbase.ipc.RpcClientImpl.call(RpcClientImpl.java:1177)
    ... 12 more

我试过改变缓存块大小,但是这样做这似乎没有什么区别。

I've tried changing the cache block size but this doesn't seem to make any difference.

是否有其他超时,我错过了。表中有很多行(百万),尽管扫描只返回10的数千行,但问题似乎只与一组特定的区域有关。

Is there some other timeout that I'm missing. There are a lot of rows in the table (millions) although the scan only returns 10's of thousands but the problem only seems to be with a specific set of regions.

推荐答案

在客户端而不是 hbase-site.xml 中创建连接时尝试此操作:

Try this when you create connection in client side instead of in hbase-site.xml:

conf.set("hbase.rpc.timeout", "1800000")

这篇关于Hbase客户端RPC超时的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆