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

Dav*_*nes 6 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)
Run Code Online (Sandbox Code Playgroud)

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

当从hadoop文档运行wordcount示例时甚至会发生这种情况.

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

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

提前致谢!

小智 1

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

您可以在 Class 中找到与此超时相关的代码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;
  }
Run Code Online (Sandbox Code Playgroud)