prestodb/presto · error · ParquetDecodingException
Plain values reader does not support:
Error message
Plain values reader does not support:
What it means
Dispatch guard in getValuesReader for PLAIN encoding: the column's Parquet physical type has no plain values reader implementation (falls past BOOLEAN/BINARY/FLOAT/INT32/INT64/INT96/... cases). Unsupported type-encoding combination for that column.
Source
Thrown at presto-parquet/src/main/java/com/facebook/presto/parquet/ParquetEncoding.java:75
switch (descriptor.getType()) {
case BOOLEAN:
return new BooleanPlainValuesReader();
case BINARY:
return new BinaryPlainValuesReader();
case FLOAT:
return new FloatPlainValuesReader();
case DOUBLE:
return new DoublePlainValuesReader();
case INT32:
return new IntegerPlainValuesReader();
case INT64:
return new LongPlainValuesReader();
case INT96:
return new FixedLenByteArrayPlainValuesReader(INT96_TYPE_LENGTH);
case FIXED_LEN_BYTE_ARRAY:
return new FixedLenByteArrayPlainValuesReader(descriptor.getPrimitiveType().getTypeLength());
default:
throw new ParquetDecodingException("Plain values reader does not support: " + descriptor.getType());
}
}
@Override
public Dictionary initDictionary(ColumnDescriptor descriptor, DictionaryPage dictionaryPage)
throws IOException
{
switch (descriptor.getType()) {
case BINARY:
return new BinaryDictionary(dictionaryPage);
case FIXED_LEN_BYTE_ARRAY:
return new BinaryDictionary(dictionaryPage, descriptor.getTypeLength());
case INT96:
return new BinaryDictionary(dictionaryPage, INT96_TYPE_LENGTH);
case INT64:
return new LongDictionary(dictionaryPage);
case DOUBLE:
return new DoubleDictionary(dictionaryPage);View on GitHub (pinned to 55bb57d202)
Solutions
- Rewrite the column as a supported physical type (e.g. convert FIXED_LEN_BYTE_ARRAY or unusual types)
- Upgrade Presto to a version that implements the reader for that physical type
- Confirm the schema in the footer matches the actual page data
Defensive patterns
Strategy: type-guard
When it happens
Trigger: Thrown at presto-parquet/src/main/java/com/facebook/presto/parquet/ParquetEncoding.java:75 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/224dccb0927fc347.
Report an issue: GitHub.