HDFS-11087. NamenodeFsck should check if the output writer is still writable. Contributed by Erik Krogen.

This commit is contained in:
Erik Krogen 2016-11-13 14:50:33 -08:00 committed by Konstantin V Shvachko
parent fb3a5085e8
commit 98d9e9c4c8
1 changed files with 8 additions and 1 deletions

View File

@ -526,7 +526,14 @@ public class NamenodeFsck implements DataEncryptionKeyFactory {
} else {
out.print('.');
}
if (res.totalFiles % 100 == 0) { out.println(); out.flush(); }
if (res.totalFiles % 100 == 0) {
out.println();
// checkError here will attempt to flush the stream, or report an error
// if the stream has encountered an error or been closed by the client
if (out.checkError()) {
throw new IOException("fsck encountered an error in its output stream");
}
}
}
private void collectBlocksSummary(String parent, HdfsFileStatus file,