apache/hadoop · error · DataFieldNotFoundException
Fail to extract data fields properly from ${tail}
Error message
Fail to extract data fields properly from ${tail} What it means
Error "Fail to extract data fields properly from ${tail}" thrown in apache/hadoop.
Source
Thrown at hadoop-tools/hadoop-resourceestimator/src/main/java/org/apache/hadoop/resourceestimator/translator/impl/RmSingleLineParser.java:109
// tail
if (!jobEventMatcher.find()) { // this line of log does not contain targeted
// events
return;
}
// now we have the match, let's do some parsing
final long date = PARSERUTIL.stringToUnixTimestamp(splits[1]);
final String tail = splits[4].split("\\s+", 4)[3]; // use the tail of the
// tail only
switch (jobEventMatcher.group(1)) {
case "Submit Application Request": {
/** Submit job. */
final Matcher appIdMatch = SUBMISSION_PATTERN.matcher(tail);
if (appIdMatch.find()) {
final String appId = appIdMatch.group(1);
jobMetas.put(appId, new JobMetaData(date));
} else {
throw new DataFieldNotFoundException(tail);
}
break;
}
case "AM Allocated Container": {
/** Allocate container. */
final Matcher containerEventMatcher =
CONTAINER_EVENT_PATTERN.matcher(tail);
if (containerEventMatcher.find()) {
final String appId = containerEventMatcher.group(1);
final String containerId = containerEventMatcher.group(2);
final JobMetaData appMeta = jobMetas.get(appId);
if (appMeta != null) {
appMeta.setContainerStart(containerId, date);
}
} else {
throw new DataFieldNotFoundException(tail);
}
break;View on GitHub (pinned to 2add963021)
Solutions
- Verify the RM log line format matches what RmSingleLineParser expects; the log may be from a different Hadoop version.
When it happens
Trigger: A ResourceManager log line does not match the expected single-line format, so the required data fields cannot be extracted.
Common situations: See trigger scenarios.
AI-assisted analysis of apache/hadoop@2add963021 (2026-08-22).
Data as JSON: /api/errors/e75ba09e3e99791f.
Report an issue: GitHub.