[
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