概述
Hive job failed with error "org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.hdfs.server.namenode.LeaseExpiredException"
本文介绍了您的配置单元作业失败并出现错误时该怎么办:“ org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.hdfs.server.namenode.LeaseExpiredException ”
需要处理40TB数据集的配置单元作业失败,出现以下错误:
org.apache.hadoop.hive.ql.exec.MapOperator.process(MapOperator.java:544) at org.apache.hadoop.hive.ql.exec.mr.ExecMapper.map(ExecMapper.java:157) ... 8 more Caused by: org.apache.hadoop.hive.ql.metadata.HiveException:
org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.hdfs.server.namenode.LeaseExpiredException): No lease on /tmp/hive-svcckp/hive_2014-08-12_21-58-23_567_8729876893578629726-1/_task_tmp.-ext-10002/country_code=US/base_div_nbr=1/retail_channel_code=1/visit_date=2011-12-22/load_timestamp=20140810001530/_tmp.002881_0: File does not exist. Holder DFSClient_attempt_1407874976831_0233_m_000178_0_-1560055874_1 does not have any open files. at
org.apache.hadoop.hdfs.server.namenode.FSNamesystem.checkLease(FSNamesystem.java:2932) at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.analyzeFileState(FSNamesystem.java:2738) at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getAdditionalBlock(FSNamesystem.java:2646) at org.apache.hadoop.hdfs.server.namenode.NameNodeRpcServer.addBlock(NameNodeRpcServer.java:555) .....
原因:
根据我们的观察,此问题可能是由以下问题引起的:
- 作业需要打开更多文件,这些文件超出了ulimit中指定的最大打开文件数。对于报告此问题的客户,此问题是由以下事实触发的:他们的一半Hadoop群集节点由于电源故障而死亡。因此,其余节点需要处理更多工作流,这需要打开更多文件。每个节点上打开文件的最大数量无法处理额外的工作负载。
为了确认该问题,在发生问题时,您可以在一些nodemanager主机上运行以下命令。
lsof |wc -l
解析度:
当您看到此问题时,请考虑增加用户在所有nodemanager主机上运行作业的最大打开文件数上限。
注意:对于受保护的群集,作业所有者是启动作业的用户。对于不安全的用户,纱线用户拥有该工作。
将gpadmin用户的最大打开文件数设置为300万的示例:
在/etc/security/limit.conf中添加以下行
gpadmin nofile 3000000然后以gpadmin登录并运行
ulimit -n 3000000要进行永久更改,请在/etc/security/limit.d/gpadmin中添加以下行。创建此文件(如果不存在)。
gpadmin-nofile 3000000要确认更改,请以gpadmin身份运行以下命令
ulimit -a要确认nologin用户的更改,请运行以下命令(以user yarn user为例)
sudo -u yarn sh -c“ ulimit -a && exec su -u yarn”
最后
以上就是大力镜子为你收集整理的Hive 问题报错处理——No lease on的全部内容,希望文章能够帮你解决Hive 问题报错处理——No lease on所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复