Asynchronous HBase失败,org.apache.hadoop.HBase.NotServingRegionException区域未联机

Asynchronous HBase失败,org.apache.hadoop.HBase.NotServingRegionException区域未联机,asynchronous,hbase,apache-zookeeper,Asynchronous,Hbase,Apache Zookeeper,我有一个异步应用程序,它使用 我的HBase版本是:1.0.0-cdh5.6.0 我的异步HBase客户端版本是:0.9.0 该应用程序运行了一段时间(约4或5天),但在周末开始失败,出现以下异常: org.apache.hadoop.hbase.NotServingRegionException: Region pageviews,,1463568860289.298bb29bbd148a0a62ec90885ef8d027. is not online on //some address h

我有一个异步应用程序,它使用

我的HBase版本是:1.0.0-cdh5.6.0 我的异步HBase客户端版本是:0.9.0

该应用程序运行了一段时间(约4或5天),但在周末开始失败,出现以下异常:

org.apache.hadoop.hbase.NotServingRegionException: Region pageviews,,1463568860289.298bb29bbd148a0a62ec90885ef8d027. is not online on //some address here
        at org.apache.hadoop.hbase.regionserver.HRegionServer.getRegionByEncodedName(HRegionServer.java:2786)
        at org.apache.hadoop.hbase.regionserver.RSRpcServices.getRegion(RSRpcServices.java:922)
        at org.apache.hadoop.hbase.regionserver.RSRpcServices.mutate(RSRpcServices.java:1965)
        at org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:32203)
        at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2034)
        at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:107)
        at org.apache.hadoop.hbase.ipc.RpcExecutor.consumerLoop(RpcExecutor.java:130)
        at org.apache.hadoop.hbase.ipc.RpcExecutor$1.run(RpcExecutor.java:107)
        at java.lang.Thread.run(Thread.java:745)
我所做的:

  • 我通过进入HBase外壳并在那里玩一些工作正常的表来验证HBase是否确实正常工作
  • 我通过运行
    /hbase zkcli
    ,然后运行:
    rmr/hbase/root region server
    ,登录到zookeeper外壳-我根据以下链接完成了此操作:。这不适用于以下错误:
    节点不存在:/hbase/root region server
    。我尝试解决此问题,但遇到此解决方案建议:。因此,我运行:
    rmr/hbase/metaregionserver
    ,它没有做任何事情(至少它没有写任何东西)
  • 我尝试寻找其他解决方案,一些人建议它与不兼容的HBase版本有关,这听起来可能是正确的,但它确实工作了好几天,没有任何问题,所以我想知道到底是什么问题
如果有人对这里到底是什么问题有任何想法,我将不胜感激。现在我有点茫然


感谢

似乎有一个特定的表及其区域已损坏(您可以按照所述从hbase外壳访问其他表),请尝试使用特定的表名,这可能会解决此问题

您可以通过增加打开区域所需的线程数量来解决这个问题,这样即使本地索引表的线程仍在等待解除死锁,也可以分配元区域

<property> <name>hbase.regionserver.executor.openregion.threads</name> <value>100</value> </property>
hbase.regionserver.executor.openregion.threads 100

您是否能够修复此问题?下面的答案有帮助吗?我只是看到了答案:)所以我没有时间去查看。很明显,我会在尝试后更新。我必须重新启动我们的服务,所以问题还不能重现。我确实检查了hbck命令,它似乎很适合我上一期的版本。我会让它运行2或3天,看看它是否再次发生,如果发生,我会尝试使用您的建议之一解决它。谢谢你的回答!我会尽快告诉你我会尽快告诉你,如果我发现它确实解决了我的问题我很抱歉我没有早些回复,但我不得不因为更紧急的任务而突然离开。无论如何,hbck司令部帮了忙,谢谢!我在重新安装Hbase cluster时遇到这个错误,通过删除以前的数据解决了这个问题,包括以下三个部分。1<代码>/hbasezookeeper中的节点。2.hdfs目录,上一个群集配置文件
hbase site.xml
中此路径的配置项为
hbase.rootdir
。如果当前集群的配置值与前一个集群的配置值不同,不要担心。3.删除每个节点上由HBase创建的本地目录。配置文件
hbase site.xml
中的配置项是
hbase.tmp.dir