apache/iceberg · error · UnsupportedOperationException
caseSensitive is not supported
Error message
caseSensitive is not supported
What it means
Default-interface guard on PartitionStatisticsScan: thrown when caseSensitive(boolean) is called on a scan implementation that did not override it, so toggling case sensitivity of partition-statistics filters is unsupported for that class. The message names no class but the condition is purely about the implementation's capabilities.
Solutions
- Use column names in filter expressions that match exactly, avoiding the need for case-insensitive matching
- Catch UnsupportedOperationException and proceed with the default case-sensitive behavior
- Implement caseSensitive in the custom scan class
Defensive patterns
Strategy: type-guard
When it happens
Trigger: Thrown at api/src/main/java/org/apache/iceberg/PartitionStatisticsScan.java:53 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of apache/iceberg@86d9c8fc54 (2026-09-12).
Data as JSON: /api/errors/fd62bd0dd357f708.
Report an issue: GitHub.
Appendix: source
Thrown at api/src/main/java/org/apache/iceberg/PartitionStatisticsScan.java:53
/**
* Create a new scan from the results of this, where partitions are filtered by the {@link
* Expression}.
*
* @param filter a filter expression
* @return a new scan based on this with results filtered by the expression
*/
PartitionStatisticsScan filter(Expression filter);
/**
* Create a new scan from this that will configure whether column name matches in filter
* expressions are case-sensitive. Default is true.
*
* @param caseSensitive whether column name matches in filter expressions should be case-sensitive
* @return a new scan based on this with the given case sensitivity
*/
default PartitionStatisticsScan caseSensitive(boolean caseSensitive) {
throw new UnsupportedOperationException("caseSensitive is not supported");
}
/**
* Create a new scan from this with the schema as its projection.
*
* @param schema a projection schema
* @return a new scan based on this with the given projection
*/
PartitionStatisticsScan project(Schema schema);
/**
* Scans a partition statistics file belonging to a particular snapshot
*
* @return an Iterable of partition statistics
*/
CloseableIterable<PartitionStatistics> scan();
}
View on GitHub (pinned to 86d9c8fc54)