You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-dev@hadoop.apache.org by "Raghu Angadi (JIRA)" <ji...@apache.org> on 2008/03/08 02:35:46 UTC
[jira] Issue Comment Edited: (HADOOP-2971) SocketTimeoutException
in unit tests
[ https://issues.apache.org/jira/browse/HADOOP-2971?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12576465#action_12576465 ]
rangadi edited comment on HADOOP-2971 at 3/7/08 5:35 PM:
--------------------------------------------------------------
I thought I could avoid calling System.currentTimeMillis() while waiting and depend on select(). Tough luck.
The attached patch polls in a loop until timeout passes. Also removes a large block for setting "channeStr". we use channel.toString() instead.
was (Author: rangadi):
I thought I could avoid calling System.currentTimeMillis() while waiting and depend on select(). Tough luck.
The attached patch polls in a loop until timeout passes. Also remove a large block for setting "channeStr" and use use channel.toString() instead.
> SocketTimeoutException in unit tests
> ------------------------------------
>
> Key: HADOOP-2971
> URL: https://issues.apache.org/jira/browse/HADOOP-2971
> Project: Hadoop Core
> Issue Type: Bug
> Components: io
> Affects Versions: 0.17.0
> Reporter: Raghu Angadi
> Assignee: Raghu Angadi
> Attachments: HADOOP-2971.patch
>
>
> TestJobStatusPersistency failed and contained DataNode stacktraces similar to the following :
> {noformat}
> 2008-03-07 21:27:00,410 ERROR dfs.DataNode (DataNode.java:run(976)) - 127.0.0.1:57790:DataXceiver: java.net.SocketTimeoutException: 0 millis
> timeout while waiting for Unknown Addr (local: /127.0.0.1:57790) to be ready for read
> at org.apache.hadoop.net.SocketIOWithTimeout.doIO(SocketIOWithTimeout.java:188)
> at org.apache.hadoop.net.SocketInputStream.read(SocketInputStream.java:135)
> at org.apache.hadoop.net.SocketInputStream.read(SocketInputStream.java:121)
> at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
> at java.io.BufferedInputStream.read(BufferedInputStream.java:237)
> at java.io.DataInputStream.readInt(DataInputStream.java:370)
> at org.apache.hadoop.dfs.DataNode$BlockReceiver.receiveBlock(DataNode.java:2434)
> at org.apache.hadoop.dfs.DataNode$DataXceiver.writeBlock(DataNode.java:1170)
> at org.apache.hadoop.dfs.DataNode$DataXceiver.run(DataNode.java:953)
> at java.lang.Thread.run(Thread.java:619)
> {noformat}
> This is mostly related to HADOOP-2346. The error is strange. socket.getRemoteSocketAddress() returned null implying this socket is not connected yet. But we have already read a few bytes from it!.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.