apache/hadoop · error · HadoopIllegalArgumentException
Too many erased, not recoverable
Error message
Too many erased, not recoverable
What it means
Error "Too many erased, not recoverable" thrown in apache/hadoop.
Source
Thrown at hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/rawcoder/DecodingState.java:51
* checking assumes it's a MDS code. Other code can override this.
* @param inputs input buffers to check
* @param erasedIndexes indexes of erased units in the inputs array
* @param outputs output buffers to check
*/
<T> void checkParameters(T[] inputs, int[] erasedIndexes,
T[] outputs) {
if (inputs.length != decoder.getNumParityUnits() +
decoder.getNumDataUnits()) {
throw new IllegalArgumentException("Invalid inputs length");
}
if (erasedIndexes.length != outputs.length) {
throw new HadoopIllegalArgumentException(
"erasedIndexes and outputs mismatch in length");
}
if (erasedIndexes.length > decoder.getNumParityUnits()) {
throw new HadoopIllegalArgumentException(
"Too many erased, not recoverable");
}
}
}
View on GitHub (pinned to 2add963021)
Solutions
- The number of erased blocks exceeds numParityUnits; the stripe is unrecoverable. Restore blocks from another replica or accept data loss.
- Investigate why so many blocks are missing (disk failures, DN outages) before decoding.
When it happens
Trigger: Thrown at hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/rawcoder/DecodingState.java:51 when the library encounters an invalid state.
Common situations: Occurs when more blocks are erased than parity units available, making recovery impossible. Check erasedIndexes.length <= numParityUnits before decoding.
AI-assisted analysis of apache/hadoop@2add963021 (2026-08-22).
Data as JSON: /api/errors/bb7c9a23080f05d3.
Report an issue: GitHub.