prestodb/presto · error · PrestoException
NOT_SUPPORTED
NOT_SUPPORTED
Error message
Unsupported iceberg content type: ${fileContent} What it means
FileContent.fromIcebergFileContent converts the Iceberg API's FileContent enum to Presto's own enum; an unrecognized content type (e.g. a newer spec constant this build does not map, such as an unexpected switch default) triggers this NOT_SUPPORTED error, indicating a file written with a newer Iceberg content kind.
Source
Thrown at presto-iceberg/src/main/java/com/facebook/presto/iceberg/FileContent.java:61
public static FileContent fromIcebergFileContent(org.apache.iceberg.FileContent fileContent)
{
// The DELETION_VECTOR enum constant was introduced in newer
// iceberg-api releases (V3 spec) and may not be present at compile
// time when building against older iceberg-api. Use name() string
// comparison so this code compiles + runs against any version that
// ships at least DATA/POSITION_DELETES/EQUALITY_DELETES.
switch (fileContent) {
case DATA:
return DATA;
case POSITION_DELETES:
return POSITION_DELETES;
case EQUALITY_DELETES:
return EQUALITY_DELETES;
default:
if ("DELETION_VECTOR".equals(fileContent.name())) {
return DELETION_VECTOR;
}
throw new PrestoException(NOT_SUPPORTED, "Unsupported iceberg content type: " + fileContent);
}
}
}
View on GitHub (pinned to 55bb57d202)
Solutions
- Upgrade Presto to a version that maps the new Iceberg file content type
- Exclude or clean files of the unsupported content type from the table if possible
Defensive patterns
Strategy: fallback
When it happens
Trigger: Thrown at presto-iceberg/src/main/java/com/facebook/presto/iceberg/FileContent.java:61 when the library encounters an invalid state.
Common situations: See trigger scenarios.
Understand the failure class
Background: Presto NOT_SUPPORTED error: what "not supported" means and how to fix it — this error's family across 3 libraries.
AI-assisted analysis of prestodb/presto@55bb57d202 (2026-09-04).
Data as JSON: /api/errors/52e3304da207bb23.
Report an issue: GitHub.