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)

This commit is contained in:
yliu 2015-08-04 15:51:37 +08:00
parent 89ccfd9fcc
commit d2b941f94a
2 changed files with 11 additions and 5 deletions

View File

@ -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

View File

@ -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) {