[ https://issues.apache.org/jira/browse/HADOOP-16677?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16972853#comment-16972853 ]
Hudson commented on HADOOP-16677: --------------------------------- SUCCESS: Integrated in Jenkins build Hadoop-trunk-Commit #17637 (See [https://builds.apache.org/job/Hadoop-trunk-Commit/17637/]) HADOOP-16677. Recalculate the remaining timeout millis correctly while (weichiu: rev df6b3162c11987ba5299c69cb251332228dacf36) * (edit) hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/TestSocketIOWithTimeout.java * (edit) hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/net/SocketIOWithTimeout.java > Recalculate the remaining timeout millis correctly while throwing an > InterupptedException in SocketIOWithTimeout. > ----------------------------------------------------------------------------------------------------------------- > > Key: HADOOP-16677 > URL: https://issues.apache.org/jira/browse/HADOOP-16677 > Project: Hadoop Common > Issue Type: Bug > Components: common > Affects Versions: 3.1.3 > Reporter: Xudong Cao > Assignee: Xudong Cao > Priority: Minor > Labels: pull-request-available > Fix For: 3.3.0, 3.1.4, 3.2.2 > > Attachments: HADOOP-16677.001.patch > > > In SocketIOWithTimeout, when a thread was interrupted and exit from select(), > it proceed to throw an InterruptedIOException, in exception message the > remaining timeout mills should be calcuated correctly rather than simply give > a total timeout millis , which could be very misleading. > > An example log before this jira: > {code:java} > 2019-10-31 16:20:39,496 INFO org.apache.hadoop.hdfs.server.datanode.DataNode: > Exception for BP-1895911599-192.168.202.11-1572488735889:blk_1073741833_1016 > java.io.InterruptedIOException: Interrupted while waiting for IO on channel > java.nio.channels.SocketChannel[connected local=/192.168.202.12:50010 > remote=/192.168.202.11:57006]. 60000 millis timeout left. > at > org.apache.hadoop.net.SocketIOWithTimeout$SelectorPool.select(SocketIOWithTimeout.java:351) > at > org.apache.hadoop.net.SocketIOWithTimeout.doIO(SocketIOWithTimeout.java:157)){code} > > An example log after this jira: > {code:java} > 2019-10-31 16:20:39,496 INFO org.apache.hadoop.hdfs.server.datanode.DataNode: > Exception for BP-1895911599-192.168.202.11-1572488735889:blk_1073741833_1016 > java.io.InterruptedIOException: Interrupted while waiting for IO on channel > java.nio.channels.SocketChannel[connected local=/192.168.202.12:50010 > remote=/192.168.202.11:57006]. Total timeout mills is 60000, 1000 millis > timeout left. > at > org.apache.hadoop.net.SocketIOWithTimeout$SelectorPool.select(SocketIOWithTimeout.java:351) > at > org.apache.hadoop.net.SocketIOWithTimeout.doIO(SocketIOWithTimeout.java:157)){code} -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-issues-h...@hadoop.apache.org