[
https://issues.apache.org/jira/browse/HDFS-5822?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13895721#comment-13895721
]
Ding Yuan commented on HDFS-5822:
---------------------------------
For what it is worth, I am attaching a patch to log the InterruptedException
against trunk. I noticed that two locations in DFSOutputStream.java, where
InterruptedException wasn't logged in 2.2.0, are now logged already in trunk.
The patch logs the InterruptedException in other places. Any feedback is
appreciated!
> InterruptedException to thread sleep ignored
> --------------------------------------------
>
> Key: HDFS-5822
> URL: https://issues.apache.org/jira/browse/HDFS-5822
> Project: Hadoop HDFS
> Issue Type: Bug
> Components: datanode
> Affects Versions: 2.2.0
> Reporter: Ding Yuan
> Attachments: hdfs-5822.patch
>
>
> In org/apache/hadoop/hdfs/server/datanode/DataXceiverServer.java, there is
> the following code snippet in the run() method:
> {noformat}
> 156: } catch (OutOfMemoryError ie) {
> 157: IOUtils.cleanup(null, peer);
> 158: // DataNode can run out of memory if there is too many transfers.
> 159: // Log the event, Sleep for 30 seconds, other transfers may
> complete by
> 160: // then.
> 161: LOG.warn("DataNode is out of memory. Will retry in 30 seconds.",
> ie);
> 162: try {
> 163: Thread.sleep(30 * 1000);
> 164: } catch (InterruptedException e) {
> 165: // ignore
> 166: }
> 167: }
> {noformat}
> Note that InterruptedException is completely ignored. This might not be safe
> since any potential events that lead to InterruptedException are lost?
> More info on why InterruptedException shouldn't be ignored:
> http://stackoverflow.com/questions/1087475/when-does-javas-thread-sleep-throw-interruptedexception
> Thanks,
> Ding
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)