当前位置:   article > 正文

Hive查询问题(卡住)_error in acquiring locks: error communicating with

error in acquiring locks: error communicating with the metastore

一、现象

几乎全部SQL语句都不能查,卡死在那里,过很久之后可能会报

FAILED: Error in acquiring locks: Error communicating with the metastore

但是查看后台hive的日志,没有任何异常

SQL语句比如:

  1. select 1
  2. show tables;

二、定位原因

1、重启hiveserver2,MetaStore等服务都没有效果

2、考虑是hive元数据的问题

查看hive元数据表的使用情况

  1. show OPEN TABLES where In_use > 0;
  2. show full processlist;

发现多个以下语句:

select nl_next from NEXT_LOCK_ID for update

猜测这些表被锁死,导致。

查看数据:

select nl_next from NEXT_LOCK_ID

发现有2条一样的数据

问题可能就在这里;想办法删除一条;

三、解决路径

NEXT_LOCK_ID 始终有锁,无法删除数据。

1、停止hiveserver2,MetaStore 服务;发现还有锁

2、查看hive应用进程 ps -ef|grep hive,全部杀掉,锁释放

3、然后删除NEXT_LOCK_ID一条记录

4、重启hiveserver2,MetaStore

5、查询hive 恢复正常

四、总结

原因可能是多个进程同时操作,导致hive事务上的bug,插进了2条一样的数据,导致元数据库被锁

以下几个hive元数据表跟hive的事务有关:
NEXT_LOCK_ID

next_compaction_queue_id

next_txn_id

以上三个表出问题就有可能会报以下错误: error in acquiring locks: error communicating with the metastore.

hive 卡死的原因很多,这个是其中之一,基本都hive metastore会有一些关系,大家可以按这个方向去定位原因,就能更快速寻找到问题的根源。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/532263
推荐阅读
相关标签
  

闽ICP备14008679号