prestodb/presto · error · IllegalArgumentException
Unsupported encoding
Error message
Unsupported encoding
What it means
Thrown from startStripe's switch on the column's encoding kind (e.g. DIRECT, DICTIONARY_V2 handled; anything else falls through) — the stripe uses a slice encoding this reader cannot dispatch to, e.g. a writer-emitted encoding unsupported for varchar columns.
Source
Thrown at presto-orc/src/main/java/com/facebook/presto/orc/reader/SliceSelectiveStreamReader.java:109
currentReader = directReader;
if (dictionaryReader != null && context.isResetAllReaders()) {
dictionaryReader = null;
System.setProperty("RESET_SLICE_READER", "RESET_SLICE_READER");
}
break;
case DICTIONARY:
case DICTIONARY_V2:
if (dictionaryReader == null) {
dictionaryReader = new SliceDictionarySelectiveReader(context);
}
currentReader = dictionaryReader;
if (directReader != null && context.isResetAllReaders()) {
directReader = null;
System.setProperty("RESET_SLICE_READER", "RESET_SLICE_READER");
}
break;
default:
throw new IllegalArgumentException("Unsupported encoding " + kind);
}
currentReader.startStripe(timezone, stripe);
}
@Override
public void startRowGroup(InputStreamSources dataStreamSources)
throws IOException
{
currentReader.startRowGroup(dataStreamSources);
}
@Override
public String toString()
{
return toStringHelper(this)
.addValue(context.getStreamDescriptor())
.toString();View on GitHub (pinned to 55bb57d202)
Solutions
- Rewrite the file using a standard DIRECT or DICTIONARY(_V2) encoding
- Upgrade Presto to a release supporting the encoding shown in the message
- Inspect footer metadata to confirm the encoding kind and rule out corruption
Defensive patterns
Strategy: type-guard
When it happens
Trigger: Thrown at presto-orc/src/main/java/com/facebook/presto/orc/reader/SliceSelectiveStreamReader.java:109 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/a24178db79498fc7.
Report an issue: GitHub.