Repository: hadoop Updated Branches: refs/heads/branch-2 89ccfd9fc -> d2b941f94
HDFS-8850. VolumeScanner thread exits with exception if there is no block pool to be scanned but there are suspicious blocks. (Colin Patrick McCabe via yliu) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/d2b941f9 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/d2b941f9 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/d2b941f9 Branch: refs/heads/branch-2 Commit: d2b941f94a835f7bdde7714d21a470b505aa582b Parents: 89ccfd9 Author: yliu <[email protected]> Authored: Tue Aug 4 15:51:37 2015 +0800 Committer: yliu <[email protected]> Committed: Tue Aug 4 15:51:37 2015 +0800 ---------------------------------------------------------------------- hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt | 4 ++++ .../hadoop/hdfs/server/datanode/VolumeScanner.java | 12 +++++++----- 2 files changed, 11 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/d2b941f9/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt index f03fb21..2b19fcb 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt +++ b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt @@ -767,6 +767,10 @@ Release 2.8.0 - UNRELEASED HDFS-8847. change TestHDFSContractAppend to not override testRenameFileBeingAppended method. (Zhihai Xu) + HDFS-8850. VolumeScanner thread exits with exception if there is no block + pool to be scanned but there are suspicious blocks. (Colin Patrick McCabe + via yliu) + Release 2.7.2 - UNRELEASED INCOMPATIBLE CHANGES http://git-wip-us.apache.org/repos/asf/hadoop/blob/d2b941f9/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/VolumeScanner.java ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/VolumeScanner.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/VolumeScanner.java index ff655c2..212e13b 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/VolumeScanner.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/VolumeScanner.java @@ -536,11 +536,13 @@ public class VolumeScanner extends Thread { return 0; } } - long saveDelta = monotonicMs - curBlockIter.getLastSavedMs(); - if (saveDelta >= conf.cursorSaveMs) { - LOG.debug("{}: saving block iterator {} after {} ms.", - this, curBlockIter, saveDelta); - saveBlockIterator(curBlockIter); + if (curBlockIter != null) { + long saveDelta = monotonicMs - curBlockIter.getLastSavedMs(); + if (saveDelta >= conf.cursorSaveMs) { + LOG.debug("{}: saving block iterator {} after {} ms.", + this, curBlockIter, saveDelta); + saveBlockIterator(curBlockIter); + } } bytesScanned = scanBlock(block, conf.targetBytesPerSec); if (bytesScanned >= 0) {
