0

对于我的 Pig map reduce 作业中的某些映射器和 reducer,我间歇性地看到此异常。大多数情况下,它会在其他节点上重试并且任务成功。但有时所有 4 个任务都失败了,map reduce 作业失败了。

然而有趣的是文件夹jobcache确实有700权限。我不明白为什么它不能在里面创建文件夹。

Error initializing attempt_201212101828_0396_m_000028_0:
java.io.IOException: Failed to set permissions of path: /apollo/env/TrafficAnalyticsHadoop/var/hadoop/mapred/local_data/taskTracker/trafanly/jobcache/job_201212101828_0396 to 0700
    at org.apache.hadoop.fs.FileUtil.checkReturnValue(FileUtil.java:682)
    at org.apache.hadoop.fs.FileUtil.setPermission(FileUtil.java:671)
    at org.apache.hadoop.fs.RawLocalFileSystem.setPermission(RawLocalFileSystem.java:509)
    at org.apache.hadoop.fs.RawLocalFileSystem.mkdirs(RawLocalFileSystem.java:344)
    at org.apache.hadoop.mapred.JobLocalizer.createJobDirs(JobLocalizer.java:221)
    at org.apache.hadoop.mapred.DefaultTaskController.initializeJob(DefaultTaskController.java:184)
    at org.apache.hadoop.mapred.TaskTracker$4.run(TaskTracker.java:1226)
    at java.security.AccessController.doPrivileged(Native Method)
    at javax.security.auth.Subject.doAs(Subject.java:396)
    at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1093)
    at org.apache.hadoop.mapred.TaskTracker.initializeJob(TaskTracker.java:1201)
    at org.apache.hadoop.mapred.TaskTracker.localizeJob(TaskTracker.java:1116)
    at org.apache.hadoop.mapred.TaskTracker$5.run(TaskTracker.java:2404)
    at java.lang.Thread.run(Thread.java:662)

如果有帮助,我正在使用 Hadoop 1.0.1。我在网上搜索时发现的另一件事是:https ://issues.apache.org/jira/browse/MAPREDUCE-890 。在我的情况下,启动 mapred 集群的用户确实正在运行该作业,这就是它失败的时候。对于任何其他用户,该作业运行良好。

任何帮助,将不胜感激。

4

1 回答 1

0

将您在 .xml 配置文件中用作属性值的目录的权限更改为 755

于 2012-12-14T21:08:11.847 回答