pentaho/pentaho-kettle · error · KettleException
Unable to read bytes from the gzipped input file
Error message
Unable to read bytes from the gzipped input file
What it means
Wrapper error in ParGzipCsvInputData.getMoreData: reading the requested block of bytes from the gzipped input stream failed with an IOException before size bytes could be filled (EOF is handled separately by setting eofReached). The requested byte count is in the message; the cause is chained.
Solutions
- Verify the gzip file is not truncated or corrupted
- Check disk/streams availability and file permissions
- Inspect the chained IOException for the underlying read error
Defensive patterns
Strategy: try-catch
When it happens
Trigger: Thrown at engine/src/main/java/org/pentaho/di/trans/steps/parallelgzipcsv/ParGzipCsvInputData.java:159 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of pentaho/pentaho-kettle@f3058517a1 (2026-09-13).
Data as JSON: /api/errors/ce131c61a65265e2.
Report an issue: GitHub.
Appendix: source
Thrown at engine/src/main/java/org/pentaho/di/trans/steps/parallelgzipcsv/ParGzipCsvInputData.java:159
while ( bytesRead < size ) {
int n = gzis.read( byteBuffer, maxBuffer, leftToRead );
if ( n < 0 ) {
// EOF, nothing more to read in combination with the need to get more data means we're done.
//
eofReached = true;
fileReadPosition += bytesRead;
return bytesRead == 0;
}
bytesRead += n; // bytes read so far
maxBuffer += n; // that's where we ended up so far
leftToRead -= n; // a little bit less to read
}
fileReadPosition += bytesRead; // keep track of where we are in the file...
return false; // all OK
} catch ( IOException e ) {
throw new KettleException( "Unable to read " + size + " bytes from the gzipped input file", e );
}
}
}
View on GitHub (pinned to f3058517a1)