MAPREDUCE-6960. Shuffle Handler prints disk error stack traces for every read failure.

This commit is contained in:
Eric Payne 2017-09-19 10:35:15 -05:00
parent 3a20debdde
commit 595d478408

View File

@ -80,6 +80,7 @@
import org.apache.hadoop.security.proto.SecurityProtos.TokenProto;
import org.apache.hadoop.security.ssl.SSLFactory;
import org.apache.hadoop.security.token.Token;
import org.apache.hadoop.util.DiskChecker;
import org.apache.hadoop.util.Shell;
import org.apache.hadoop.util.concurrent.HadoopExecutors;
import org.apache.hadoop.yarn.api.records.ApplicationId;
@ -1088,7 +1089,11 @@ public ChannelFuture sendMap(ReduceContext reduceContext)
}
nextMap.addListener(new ReduceMapFileCount(reduceContext));
} catch (IOException e) {
LOG.error("Shuffle error :", e);
if (e instanceof DiskChecker.DiskErrorException) {
LOG.error("Shuffle error :" + e);
} else {
LOG.error("Shuffle error :", e);
}
String errorMessage = getErrorMessage(e);
sendError(reduceContext.getCtx(), errorMessage,
INTERNAL_SERVER_ERROR);