prestodb/presto · error · IllegalArgumentException
Invalid compressionCodec:
Error message
Invalid compressionCodec:
What it means
Sentinel-style guard in getCompressionCodecName: the Hadoop compression codec class name returned by the parquet writer does not map to any Presto parquet CompressionCodec enum constant (SNAPPY, GZIP, LZO, BROTLI, LZ4, etc.). Fires when writing a parquet file whose configured codec class is unknown, typically due to an unsupported or misspelled compression option.
Source
Thrown at presto-parquet/src/main/java/com/facebook/presto/parquet/writer/ParquetWriter.java:361
return SNAPPY;
}
else if (compressionCodecClass.equals("org.apache.hadoop.io.compress.GzipCodec")) {
return GZIP;
}
else if (compressionCodecClass.equals("com.hadoop.compression.lzo.LzoCodec")) {
return LZO;
}
else if (compressionCodecClass.equals("org.apache.hadoop.io.compress.BrotliCodec")) {
return BROTLI;
}
else if (compressionCodecClass.equals("org.apache.hadoop.io.compress.Lz4Codec")) {
return LZ4;
}
else if (compressionCodecClass.equals("org.apache.hadoop.io.compress.ZStandardCodec") ||
compressionCodecClass.equals("org.apache.parquet.hadoop.codec.ZstandardCodec")) {
return ZSTD;
}
throw new IllegalArgumentException("Invalid compressionCodec: " + compressionCodecClass);
}
public boolean isClosed()
{
return closed;
}
}
View on GitHub (pinned to 55bb57d202)
Solutions
- Use one of the supported compression codecs: SNAPPY, GZIP, LZO, BROTLI, LZ4, or ZSTD as configured for the session/writer
- Check the hive.compression-codec or writer session property for typos and unsupported values
- Add a mapping branch in getCompressionCodecName if a new codec must be supported
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at presto-parquet/src/main/java/com/facebook/presto/parquet/writer/ParquetWriter.java:361 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of prestodb/presto@55bb57d202 (2026-09-04).
Data as JSON: /api/errors/f32f92b2df8c88eb.
Report an issue: GitHub.