为什么hadoop中有很多超时错误?

发布于 2021-11-29 04:07:53 字数 3327 浏览 892 评论 2


为什么hadoop的datanode节点中有很多如下如错误:

ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: DatanodeRegistration(192.168.10.100:50010, storageID=DS-406166940-192.168.10.100-50010-1373101
404581, infoPort=50075, ipcPort=50020):DataXceiver
java.net.SocketTimeoutException: 480000 millis timeout while waiting for channel to be ready for write. ch : java.nio.channels.SocketChannel[connected local=/192.168.10.100:50010 remote=/192.168.10.100:57748]
        at org.apache.hadoop.net.SocketIOWithTimeout.waitForIO(SocketIOWithTimeout.java:246)
        at org.apache.hadoop.net.SocketOutputStream.waitForWritable(SocketOutputStream.java:159)
        at org.apache.hadoop.net.SocketOutputStream.transferToFully(SocketOutputStream.java:198)
        at org.apache.hadoop.hdfs.server.datanode.BlockSender.sendChunks(BlockSender.java:350)
        at org.apache.hadoop.hdfs.server.datanode.BlockSender.sendBlock(BlockSender.java:436)
        at org.apache.hadoop.hdfs.server.datanode.DataXceiver.readBlock(DataXceiver.java:197)
        at org.apache.hadoop.hdfs.server.datanode.DataXceiver.run(DataXceiver.java:99)
        at java.lang.Thread.run(Thread.java:662)




查询了之后说是因为上层客户端(上层用了hbase)查询慢导致的

另外日志中还有很多版本不匹配错误,这个不知道是怎么触发的?

ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: DatanodeRegistration(192.168.10.100:50010, storageID=DS-406166940-192.168.10.100-50010-1373101
404581, infoPort=50075, ipcPort=50020):DataXceiver
java.io.IOException: Version Mismatch
        at org.apache.hadoop.hdfs.server.datanode.DataXceiver.run(DataXceiver.java:85)
        at java.lang.Thread.run(Thread.java:662)



上层的hbase则有不少连接被重置的错误

WARN org.apache.hadoop.ipc.HBaseServer: IPC Server listener on 60020: readAndProcess threw exception java.io.IOException: Connection reset by p
eer. Count of bytes read: 0
java.io.IOException: Connection reset by peer
        at sun.nio.ch.FileDispatcher.read0(Native Method)
        at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:21)
        at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:198)
        at sun.nio.ch.IOUtil.read(IOUtil.java:171)
        at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:245)
        at org.apache.hadoop.hbase.ipc.HBaseServer.channelRead(HBaseServer.java:1796)
        at org.apache.hadoop.hbase.ipc.HBaseServer$Connection.readAndProcess(HBaseServer.java:1179)
        at org.apache.hadoop.hbase.ipc.HBaseServer$Listener.doRead(HBaseServer.java:748)
        at org.apache.hadoop.hbase.ipc.HBaseServer$Listener$Reader.doRunLoop(HBaseServer.java:539)
        at org.apache.hadoop.hbase.ipc.HBaseServer$Listener$Reader.run(HBaseServer.java:514)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
        at java.lang.Thread.run(Thread.java:662)



那么最终原因是不是hadoop的datanode导致的呢?

datanode的读取超时是在什么情况下触发的呢?

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

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

发布评论

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

评论(2

画骨成沙 2021-11-30 07:34:31

其他节点也有,当时正在做合并,会不会有影响?

绝情姑娘 2021-11-30 05:57:57

单节点的网络问题吧?其他节点同样有这问题?

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