hadoop运行时错误:Task process exit with nonzero status of 1

之前写好的一个hadoop代码,昨天晚上执行时报错了,查了半天没查出来,网上的方法都试了还是不行,报错信息:

2011-11-17 11:11:26,821 INFO org.apache.hadoop.mapred.JvmManager: JVM : jvm_201111071540_0140_m_-855804511 exited. Number of tasks it ran: 1
2011-11-17 11:11:26,992 INFO org.apache.hadoop.mapred.TaskTracker: attempt_201111071540_0140_m_000005_0 0.8166969%
2011-11-17 11:11:28,713 INFO org.apache.hadoop.mapred.TaskTracker: org.apache.hadoop.util.DiskChecker$DiskErrorException: Could not find taskTracker/jobcache/job_201111071540_0140/attempt_2011
11071540_0140_m_000003_0/output/file.out in any of the configured local directories

---------------------------------------------------------------------------------------------------------------------

11/11/17 10:42:57 INFO mapred.JobClient: Task Id : attempt_201111071540_0137_m_000004_2, Status : FAILED
Error: java.lang.Exception.getMessage()Ljava/lang/String;

---------------------------------------------------------------------------------------------------------------------

java.io.IOException: Task process exit with nonzero status of 1.
at org.apache.hadoop.mapred.TaskRunner.run(TaskRunner.java:418)

-----------------------------------------------------------------------------------------------------------------

网上给出的解决方案:

1、hadoop把/tmp文件夹给塞满了。只要把/tmp/hadoop-root/mapred 文件夹删除即可。再重新运行就不会出错了。

2、主要由hadoop的logs目录无法继续写入新文件造成,清理master和slaver上的logs文件夹后再次下发任务,正常运行。

其他、

第一,查看网络节点是否在同一个交换机;
第二,检查reduce分块是不是超出datanode的限度,实际上并不是每个核都可以利用起来。
第三,自身程序是不是对传入数据进行了校验,有些输入文件是有问题的。

最终原因:

原来是要分析的日志中有不规范的数据,程序处理出现异常,处理后解决。所以大家出现上面的错误后,请检查自己的代码是否有问题,说不定会找到原因。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值