[ https://issues.apache.org/jira/browse/HDFS-8710?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14613975#comment-14613975 ]
Allen Wittenauer commented on HDFS-8710: ---------------------------------------- bq. In a large cluster, the DU can even cost several or tens of minutes, which slows down startup speed of the whole cluster, so quick startup is necessary. You don't need to tell me about large clusters. If start up time is a concern, then one should be using rolling upgrade or some other decayed stop/start on DN bring up. -1 on the change. It's ultimately confusing to operations folks to have to wait 10 minutes for their change to take place. Closing as won't fix. > Always read DU value from the cached "dfsUsed" file on datanode startup > ----------------------------------------------------------------------- > > Key: HDFS-8710 > URL: https://issues.apache.org/jira/browse/HDFS-8710 > Project: Hadoop HDFS > Issue Type: Improvement > Reporter: Xinwei Qin > Assignee: Xinwei Qin > Attachments: HDFS-8710.001.patch > > > Currently, DataNode will cache DU value in "dfsUsed" file termly. When > DataNode starts or restarts, it will read in the cached DU value from > "dfsUsed" file if the value is less than 600 seconds old, otherwise, it will > run DU command, which is a very time-consuming operation(may up to dozens of > minutes) when DataNode has huge number of blocks. > Since slight imprecision of dfsUsed is not critical, and the DU value will be > updated every 600 seconds (the default DU interval) after DataNode started, > we can always read DU value from the cached file (Regardless of whether this > value is less than 600 seconds old or not) and skip DU operation on DataNode > startup to significantly shorten the startup time. -- This message was sent by Atlassian JIRA (v6.3.4#6332)