nathanmarz/storm · error · IllegalArgumentException
does not exist
Error message
${field} does not exist What it means
Thrown by Fields.fieldIndex(String) when the requested field name is not present in this Fields object's declared output/declare fields. It fires whenever tuple component code (e.g. emit anchoring, grouping, or projection) looks up a positional index for a field name that was never declared, meaning the caller and the declared stream schema are out of sync.
Solutions
- Check that the field name passed to fieldIndex is spelled exactly as declared in the stream's Fields declaration (case-sensitive).
- Verify the component is operating on the correct stream; each stream has its own declared fields.
- If the field was recently added or renamed, update both the topology declaration and all consumers that look it up.
- Guard lookups with Fields.contains(field) (or select()) before calling fieldIndex when the field may legitimately be absent.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at storm-core/src/jvm/backtype/storm/tuple/Fields.java:78 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of nathanmarz/storm@cdb116e942 (2026-09-12).
Data as JSON: /api/errors/3123f5c49c371d2b.
Report an issue: GitHub.
Appendix: source
Thrown at storm-core/src/jvm/backtype/storm/tuple/Fields.java:78
public int size() {
return _fields.size();
}
public String get(int index) {
return _fields.get(index);
}
public Iterator<String> iterator() {
return _fields.iterator();
}
/**
* Returns the position of the specified field.
*/
public int fieldIndex(String field) {
Integer ret = _index.get(field);
if(ret==null) {
throw new IllegalArgumentException(field + " does not exist");
}
return ret;
}
/**
* Returns true if this contains the specified name of the field.
*/
public boolean contains(String field) {
return _index.containsKey(field);
}
private void index() {
for(int i=0; i<_fields.size(); i++) {
_index.put(_fields.get(i), i);
}
}
@OverrideView on GitHub (pinned to cdb116e942)