Fix NPE in LazyPersistFileScrubber. Contributed by Inigo Goiri.

This commit is contained in:
Inigo Goiri 2017-05-26 13:15:44 -07:00 committed by Konstantin V Shvachko
parent d81372dfad
commit 303c8dc9b6
1 changed files with 7 additions and 3 deletions

View File

@ -3870,11 +3870,15 @@ public class FSNamesystem implements Namesystem, FSNamesystemMBean,
while (it.hasNext()) { while (it.hasNext()) {
Block b = it.next(); Block b = it.next();
BlockInfo blockInfo = blockManager.getStoredBlock(b); BlockInfo blockInfo = blockManager.getStoredBlock(b);
if (blockInfo == null) {
LOG.info("Cannot find block info for block " + b);
} else {
BlockCollection bc = getBlockCollection(blockInfo); BlockCollection bc = getBlockCollection(blockInfo);
if (bc.getStoragePolicyID() == lpPolicy.getId()) { if (bc.getStoragePolicyID() == lpPolicy.getId()) {
filesToDelete.add(bc); filesToDelete.add(bc);
} }
} }
}
for (BlockCollection bc : filesToDelete) { for (BlockCollection bc : filesToDelete) {
LOG.warn("Removing lazyPersist file " + bc.getName() + " with no replicas."); LOG.warn("Removing lazyPersist file " + bc.getName() + " with no replicas.");