0

我有许多有序的 Hadoop 作业,其中我需要一个 DistributedCache 文件。

驱动程序类(控制器)接收来自前一个作业的输入,修改一个文件,将其放置在 DistributedCache 中并开始一个新作业。

在第一份工作(即第二份工作)之后,我收到此错误:

java.io.IOException: 
The distributed cache object hdfs://xxxx/xx/x/modelfile2#modelfile2 
changed during the job from 11/8/12 11:55 PM to 11/8/12 11:55 PM

有谁知道问题可能是什么?

4

1 回答 1

0

根据 TrackerDistributedCacheManager.java 方法 downloadCacheObject 中的来源,当此异常发生时,它不会被忽略,并且不会发生从 HDFS 到本地文件系统的实际文件下载。所以任务不会在分布式缓存中找到它的文件。我怀疑您可能两次注册同一个对象,或者,当多个作业将具有相同邮件的文件从同一个控制器的分布式缓存中放入时,hadoop 中可能存在一些错误。

于 2012-11-10T07:05:11.910 回答