HBase启动表卡在PENDING_OPEN的解决记录

小记。

 

启动时表卡在PENDING_OPEN的原因可能有很多。不同的原因解决方法不同。这里仅针对下列场景。

 

HBase0.94.1

 

公司有个孩子在某个环境上给一张表加了"COMPRESSION=>SNAPPY", 抱歉的是这个环境上并没有SNAPPY.结果如何?

HBase启动的时候其他表正常,但是这张表卡在PENDING_OPEN了。看日志,找不到SNAPPY库抛异常了。可是抛出了异常,HBase又会重试,就陷入死循环了.(这个是HBase的bug了,又可以给他们提个JIRA了吧。不过近期没有去关注他们的JIRA, 不知道更高版本的解决了没有)。

尝试处理:

重启--------重启?重启完不还是陷入PENDING_OPEN的循环

把对应的region unassign掉?-----------shell里这么做会直接报错,不给机会啊

改变表的schema,尝试去掉COMPRESSION?-------------美好的想法,但是修改shema需要disable表。处于PENDING_OPEN的表是一个什么状态呢?你disable它,它说没有enable; 好吧,那enable它吧,说没有disable. 这表就卡在又没disable又没enable的状态上

 

到这里我已经没辙了(有人有更官方的办法的请留言指导)。

 

最后,忒土的办法,停掉HBase, 直接到Hadoop上,找到对应表的.tableinfo.0000xxxx文件,直接拿起来改里面的文本内容,把COMPRESSION改成NONE.重启。搞定。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值