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 2009/05/22 20:28:45 UTC

[jira] Commented: (HADOOP-5890) Use exponential backoff on Thread.sleep during DN shutdown

    [ https://issues.apache.org/jira/browse/HADOOP-5890?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12712195#action_12712195 ] 

Raghu Angadi commented on HADOOP-5890:
--------------------------------------

Looking at trunk, there should not have been any wait since 'active threads is 0', right?

> Use exponential backoff on Thread.sleep during DN shutdown
> ----------------------------------------------------------
>
>                 Key: HADOOP-5890
>                 URL: https://issues.apache.org/jira/browse/HADOOP-5890
>             Project: Hadoop Core
>          Issue Type: Improvement
>          Components: dfs
>            Reporter: Todd Lipcon
>            Assignee: Todd Lipcon
>         Attachments: hadoop-5890.txt
>
>
> Tests waste a lot of time in DataNode.shutdown. Typical logs look like:
> {code}
> 2009-05-21 17:13:20,177 INFO  datanode.DataNode (DataNode.java:shutdown(637)) - Waiting for threadgroup to exit, active threads is 0
> 2009-05-21 17:13:20,177 INFO  datanode.DataBlockScanner (DataBlockScanner.java:run(620)) - Exiting DataBlockScanner thread.
> 2009-05-21 17:13:21,117 INFO  datanode.DataNode (DataNode.java:shutdown(637)) - Waiting for threadgroup to exit, active threads is 0
> {code}
> In this example (and very commonly) the DataBlockScanner thread exits within 5-10ms after the first wait. The DN then sleeps an entire second before succeeding in shutting down.
> Using exponential backoff from a short value like 2ms up to a maximum of 1000ms would solve this.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.