[jira] [Commented] (HDFS-8710) Always read DU value from the cached dfsUsed file on datanode startup

2015-07-04 Thread Allen Wittenauer (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-8710?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=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)


[jira] [Commented] (HDFS-8710) Always read DU value from the cached dfsUsed file on datanode startup

2015-07-04 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-8710?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14613692#comment-14613692
 ] 

Hadoop QA commented on HDFS-8710:
-

\\
\\
| (x) *{color:red}-1 overall{color}* |
\\
\\
|| Vote || Subsystem || Runtime || Comment ||
| {color:red}-1{color} | pre-patch |  17m 53s | Pre-patch trunk has 1 extant 
Findbugs (version 3.0.0) warnings. |
| {color:green}+1{color} | @author |   0m  0s | The patch does not contain any 
@author tags. |
| {color:red}-1{color} | tests included |   0m  0s | The patch doesn't appear 
to include any new or modified tests.  Please justify why no new tests are 
needed for this patch. Also please list what manual steps were performed to 
verify this patch. |
| {color:green}+1{color} | javac |   7m 33s | There were no new javac warning 
messages. |
| {color:green}+1{color} | javadoc |   9m 40s | There were no new javadoc 
warning messages. |
| {color:green}+1{color} | release audit |   0m 22s | The applied patch does 
not increase the total number of release audit warnings. |
| {color:green}+1{color} | checkstyle |   2m 20s | There were no new checkstyle 
issues. |
| {color:green}+1{color} | whitespace |   0m  0s | The patch has no lines that 
end in whitespace. |
| {color:green}+1{color} | install |   1m 35s | mvn install still works. |
| {color:green}+1{color} | eclipse:eclipse |   0m 33s | The patch built with 
eclipse:eclipse. |
| {color:green}+1{color} | findbugs |   3m 19s | The patch does not introduce 
any new Findbugs (version 3.0.0) warnings. |
| {color:green}+1{color} | native |   3m 16s | Pre-build of native portion |
| {color:red}-1{color} | hdfs tests | 158m 10s | Tests failed in hadoop-hdfs. |
| | | 204m 44s | |
\\
\\
|| Reason || Tests ||
| Failed unit tests | 
hadoop.hdfs.server.balancer.TestBalancerWithMultipleNameNodes |
\\
\\
|| Subsystem || Report/Notes ||
| Patch URL | 
http://issues.apache.org/jira/secure/attachment/12743258/HDFS-8710.001.patch |
| Optional Tests | javadoc javac unit findbugs checkstyle |
| git revision | trunk / 2eae130 |
| Pre-patch Findbugs warnings | 
https://builds.apache.org/job/PreCommit-HDFS-Build/11571/artifact/patchprocess/trunkFindbugsWarningshadoop-hdfs.html
 |
| hadoop-hdfs test log | 
https://builds.apache.org/job/PreCommit-HDFS-Build/11571/artifact/patchprocess/testrun_hadoop-hdfs.txt
 |
| Test Results | 
https://builds.apache.org/job/PreCommit-HDFS-Build/11571/testReport/ |
| Java | 1.7.0_55 |
| uname | Linux asf909.gq1.ygridcore.net 3.13.0-36-lowlatency #63-Ubuntu SMP 
PREEMPT Wed Sep 3 21:56:12 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux |
| Console output | 
https://builds.apache.org/job/PreCommit-HDFS-Build/11571/console |


This message was automatically generated.

 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)


[jira] [Commented] (HDFS-8710) Always read DU value from the cached dfsUsed file on datanode startup

2015-07-03 Thread Xinwei Qin (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-8710?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14613014#comment-14613014
 ] 

Xinwei Qin  commented on HDFS-8710:
---

[~aw], thanks for your comment.
The du value will be recalculated after 600 seconds, we don't need to 
calculated a precise value on startup. The current project cannot also 
recalculate du value when the disk structure changed if the {{dfsUsed}} value 
is less than 600 seconds old.

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. 
Maybe always skip DU is radical, add a quick-restart configuration(default is 
true to skip DU) for datanode is more reasonable, when disk structure is 
changed, user can turn off quick-restart configuration to trigger DU to 
recalculate dfsused value. Any thoughts?

 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)


[jira] [Commented] (HDFS-8710) Always read DU value from the cached dfsUsed file on datanode startup

2015-07-03 Thread Allen Wittenauer (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-8710?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14612876#comment-14612876
 ] 

Allen Wittenauer commented on HDFS-8710:


On startup is exactly when you want the du to be recalculated because there is 
a good chance that the disk structure changed.

 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)