[ https://issues.apache.org/jira/browse/HDFS-2379?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Todd Lipcon updated HDFS-2379: ------------------------------ Attachment: hdfs-2379.txt bq. getBlockReport() javadoc is unnecessary bq. minor: "Request that an block report" -> "Request that a " bq. Make asyncBlockReport final. bq. (!requested || scan != null) is better readable as !(requested && scan == null) Fixed bq. Indentation of String metaPart = ... could be better Fixed - also added a constant for METADATA_EXTENSION_LENGTH instead of the bare constant 5. bq. Why do you want to deprecate #getBlockInfo()? If you have a valid reason, can you please add information on the new method/mechanism that should be used instead of the deprecated method. Answered this in the comment above. It's now removed. bq. Why are you sleeping for 2 seconds on catching Throwable? Added this comment: + // Avoid busy-looping in the case that we have entered some invalid + // state -- don't want to flood the error log with exceptions. (my experience in other parts of the DN was that these types of busy loops caused big problems) bq. Optional - This might be a good time to move some of the block reported code into a separate method, outside offerService(). I agree it would be a nice cleanup, but wanted to keep this change minimal. > 0.20: Allow block reports to proceed without holding FSDataset lock > ------------------------------------------------------------------- > > Key: HDFS-2379 > URL: https://issues.apache.org/jira/browse/HDFS-2379 > Project: Hadoop HDFS > Issue Type: Bug > Components: data-node > Affects Versions: 0.20.206.0 > Reporter: Todd Lipcon > Priority: Critical > Attachments: hdfs-2379.txt, hdfs-2379.txt, hdfs-2379.txt, > hdfs-2379.txt, hdfs-2379.txt, hdfs-2379.txt > > > As disks are getting larger and more plentiful, we're seeing DNs with > multiple millions of blocks on a single machine. When page cache space is > tight, block reports can take multiple minutes to generate. Currently, during > the scanning of the data directories to generate a report, the FSVolumeSet > lock is held. This causes writes and reads to block, timeout, etc, causing > big problems especially for clients like HBase. > This JIRA is to explore some of the ideas originally discussed in HADOOP-4584 > for the 0.20.20x series. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira