1

我看过一些关于这个主题的帖子,但我无法解决我的问题。我正在使用 Hadoop 版本 Hadoop 2.0.0-cdh4.2.0 和 java 版本“1.7.0_09-icedtea”。我正在运行一个程序,该程序在一个简单的 mapreduce 示例中使用计数器来控制交互。我还使用序列文件来传递数据。代码很简单:它以一个数字开头,比如 3。映射器不会修改数字,而只是传递值;减速器每次运行时将数字减 1。如果数字大于零,则计数器增加。最终,数字必须减少到 0,并且程序应该在该点停止。但是,在第一次迭代后(在第二次迭代期间)我总是收到以下错误:

" Running job: job_201304151408_0181
13/05/10 18:55:54 INFO mapred.JobClient:  map 0% reduce 0%
13/05/10 18:56:03 INFO mapred.JobClient:  map 100% reduce 0%
13/05/10 18:56:10 INFO mapred.JobClient:  map 100% reduce 33%

13/05/10 18:56:11 INFO mapred.JobClient: Task Id : attempt_201304151408_0181_r_000002_0, Status : FAILED
org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.hdfs.server.namenode.LeaseExpiredException): Lease mismatch on /user/harsha/iterone/import/data owned by DFSClient_NONMAPREDUCE_-592566041_1 but is accessed by DFSClient_NONMAPREDUCE_-965911637_1"

有人可以帮忙吗?谢谢你。

问候...

4

1 回答 1

0

如果我们试图写入一个不存在的文件,通常会发生租赁不匹配。

请检查是否/user/harsha/iterone/import/datahdfs.

那是一个文件吗?

于 2013-11-15T06:25:27.753 回答