解决Exception from container-launch: ExitCodeException exitCode=1的另类错误

本文解决在Hadoop2.2环境下运行自定义job时遇到的ExitCodeException错误,通过调整配置文件并排除不支持的参数,成功解决问题。
部署运行你感兴趣的模型镜像
转载请标明出处:http://blackwing.iteye.com/blog/2107107

环境为hadoop2.2,在linux下运行自己的job,报如下错误:

Exception from container-launch: ExitCodeException exitCode=1: 
ExitCodeException exitCode=1:
at org.apache.hadoop.util.Shell.runCommand(Shell.java:538)
at org.apache.hadoop.util.Shell.run(Shell.java:455)
at org.apache.hadoop.util.Shell$ShellCommandExecutor.execute(Shell.java:702)
at org.apache.hadoop.yarn.server.nodemanager.DefaultContainerExecutor.launchContainer(DefaultContainerExecutor.java:195)
at org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch.call(ContainerLaunch.java:300)
at org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch.call(ContainerLaunch.java:81)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)
Container exited with a non-zero exit code 1


但运行自带wordcount却能正常执行。google了很久,无非都是建议在mapred-site.xml中增加:
<property>
<name>mapreduce.application.classpath</name>
<value>
/usr/local/cluster/hadoop-2.2.0/etc/hadoop,
/usr/local/cluster/hadoop-2.2.0/share/hadoop/common/*,
/usr/local/cluster/hadoop-2.2.0/share/hadoop/common/lib/*,
/usr/local/cluster/hadoop-2.2.0/share/hadoop/hdfs/*,
/usr/local/cluster/hadoop-2.2.0/share/hadoop/hdfs/lib/*,
/usr/local/cluster/hadoop-2.2.0/share/hadoop/mapreduce/*,
/usr/local/cluster/hadoop-2.2.0/share/hadoop/mapreduce/lib/*,
/usr/local/cluster/hadoop-2.2.0/share/hadoop/yarn/*,
/usr/local/cluster/hadoop-2.2.0/share/hadoop/yarn/lib/*
</value>
</property>

但是问题依旧。从log中发现一个奇怪的输出:
Improperly specified VM option 'PretenureSizeThreshold'
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

立刻想到自己设置的mapred.child.java.opts参数,其中就有PretenureSizeThreshold,原来是不支持这个参数导致。修改后就能正确运行,居然折腾了很久。

您可能感兴趣的与本文相关的镜像

Stable-Diffusion-3.5

Stable-Diffusion-3.5

图片生成
Stable-Diffusion

Stable Diffusion 3.5 (SD 3.5) 是由 Stability AI 推出的新一代文本到图像生成模型,相比 3.0 版本,它提升了图像质量、运行速度和硬件效率

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值