云计算-hadoop升级调用FileSystem.get错误

发布于 2017-02-02 05:40:56 字数 1151 浏览 1261 评论 1

把Hadoop升级以后,调用FileSystem.get会报如下错误:
java.io.IOException: Filesystem closed
at org.apache.hadoop.hdfs.DFSClient.checkOpen(DFSClient.java:297)
at org.apache.hadoop.hdfs.DFSInputStream.close(DFSInputStream.java:426)
at java.io.FilterInputStream.close(FilterInputStream.java:155)
at java.util.zip.InflaterInputStream.close(InflaterInputStream.java:210)
at java.util.zip.GZIPInputStream.close(GZIPInputStream.java:109)
at org.apache.hadoop.io.compress.GzipCodec$GzipInputStream.close(GzipCodec.java:126)
at org.apache.hadoop.util.LineReader.close(LineReader.java:87)
at org.apache.hadoop.mapred.LineRecordReader.close(LineRecordReader.java:214)
at org.apache.hadoop.mapred.MapTask$TrackedRecordReader.close(MapTask.java:218)
at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:404)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:330)
at org.apache.hadoop.mapred.Child$4.run(Child.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:396)
at org.apache.hadoop.securit
请问一下是什么原因导致的?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

灵芸 2017-02-25 13:41:57

这个问题应该是多线程搜索时出现的,由于每次打开的连接次数太多,导致连接没有关闭。出现上面的错误。
解决办法:
1、在servlet初始化中,加入:

public void init(ServletConfig config) throws ServletException {
try {
this.conf = NutchConfiguration.get(config.getServletContext());
bean = NutchBean.get(config.getServletContext(), this.conf);
} catch (IOException e) {
throw new ServletException(e);
}
MAX_HITS_PER_PAGE = conf.getInt("searcher.max.hits.per.page", -1);
}

2、在web.xml,添加如下代码:

<listener>
<listener-class>org.apache.nutch.searcher.NutchBean$NutchBeanConstructor</listener-class>
</listener>

<servlet>
<servlet-name>Cached</servlet-name>
<servlet-class>org.apache.nutch.servlet.Cached</servlet-class>
</servlet>

3、在自己的servlet中把NutchBean的实例和NutchConfiguration的实例传递过去。保证初始化时只打开一次index。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文