Hadoop总是以java.util.concurrent.TimeoutException结束

时间:2017-09-05 20:56:46

标签: java hadoop timeout

我是Hadoop的新手,我写了几个总是以这个为结束的工作:

    WARN util.ShutdownHookManager: ShutdownHook '' timeout, java.util.concurrent.TimeoutException
java.util.concurrent.TimeoutException
    at java.util.concurrent.FutureTask.get(FutureTask.java:205)
    at org.apache.hadoop.util.ShutdownHookManager$1.run(ShutdownHookManager.java:67)

我在Mac上运行它(Sierra 10.12.6),我已经使用自制软件安装了Hadoop。

当从hadoop docs运行wordcount示例时,甚至会发生这种情况。

它奇怪,因为我在处理过程中没有得到任何错误,我得到了我期望的输出。

只是想知道是否有人遇到过同样的问题,如果有任何额外的配置我错过了。

提前致谢!

1 个答案:

答案 0 :(得分:1)

Hadoop 作业关闭挂钩的默认超时为 30 秒。您可以通过在 hadoop.service.shutdown.timeout 中配置 core-site.xml 来更改此超时。

您可以在 ShutdownHookManager 类中找到与此超时相关的代码。

 static long getShutdownTimeout(Configuration conf) {
    long duration = conf.getTimeDuration("hadoop.service.shutdown.timeout", 30L, TIME_UNIT_DEFAULT);
    if (duration < 1L) {
      duration = 1L;
    }

    return duration;
  }