YARN-2377. Localization exception stack traces are not passed as diagnostic info. Contributed by Gera Shegalov
This commit is contained in:
parent
1770bb942f
commit
a56ea01002
@ -633,6 +633,9 @@ Release 2.6.0 - UNRELEASED
|
||||
YARN-2651. Spun off LogRollingInterval from LogAggregationContext. (Xuan Gong
|
||||
via zjshen)
|
||||
|
||||
YARN-2377. Localization exception stack traces are not passed as
|
||||
diagnostic info (Gera Shegalov via jlowe)
|
||||
|
||||
Release 2.5.1 - 2014-09-05
|
||||
|
||||
INCOMPATIBLE CHANGES
|
||||
|
@ -90,4 +90,22 @@ public static SerializedException newInstance(Throwable e) {
|
||||
@Private
|
||||
@Unstable
|
||||
public abstract Throwable deSerialize();
|
||||
|
||||
private void stringify(StringBuilder sb) {
|
||||
sb.append(getMessage())
|
||||
.append("\n")
|
||||
.append(getRemoteTrace());
|
||||
final SerializedException cause = getCause();
|
||||
if (cause != null) {
|
||||
sb.append("Caused by: ");
|
||||
cause.stringify(sb);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
final StringBuilder sb = new StringBuilder(128);
|
||||
stringify(sb);
|
||||
return sb.toString();
|
||||
}
|
||||
}
|
@ -1008,12 +1008,12 @@ LocalizerHeartbeatResponse update(
|
||||
response.setLocalizerAction(LocalizerAction.LIVE);
|
||||
break;
|
||||
case FETCH_FAILURE:
|
||||
LOG.info("DEBUG: FAILED " + req
|
||||
+ ", " + stat.getException().getMessage());
|
||||
final String diagnostics = stat.getException().toString();
|
||||
LOG.warn(req + " failed: " + diagnostics);
|
||||
response.setLocalizerAction(LocalizerAction.DIE);
|
||||
getLocalResourcesTracker(req.getVisibility(), user, applicationId)
|
||||
.handle(new ResourceFailedLocalizationEvent(
|
||||
req, stat.getException().getMessage()));
|
||||
req, diagnostics));
|
||||
|
||||
// unlocking the resource and removing it from scheduled resource
|
||||
// list
|
||||
|
Loading…
Reference in New Issue
Block a user