{"record":{"id":"c652afe4f5ea5e45","repo":"prestodb/presto","slug":"unsupported-hive-type-s","errorCode":null,"errorMessage":"Unsupported Hive type: %s","messagePattern":"Unsupported Hive type: (.+?)","errorType":"exception","errorClass":"GenericInternalException","httpStatus":null,"severity":"error","filePath":"presto-orc/src/main/java/com/facebook/presto/orc/OrcWriteValidation.java","lineNumber":913,"sourceCode":"                        .map(ColumnStatisticsValidation::new)\n                        .collect(toImmutableList());\n            }\n            else if (type.getTypeSignature().getBase().equals(ROW)) {\n                statisticsBuilder = new CountStatisticsBuilder();\n                fieldExtractor = block -> {\n                    ColumnarRow columnarRow = ColumnarRow.toColumnarRow(block);\n                    ImmutableList.Builder<Block> fields = ImmutableList.builder();\n                    for (int index = 0; index < columnarRow.getFieldCount(); index++) {\n                        fields.add(columnarRow.getField(index));\n                    }\n                    return fields.build();\n                };\n                fieldBuilders = type.getTypeParameters().stream()\n                        .map(ColumnStatisticsValidation::new)\n                        .collect(toImmutableList());\n            }\n            else {\n                throw new GenericInternalException(format(\"Unsupported Hive type: %s\", type));\n            }\n        }\n\n        private void addBlock(Block block)\n        {\n            statisticsBuilder.addBlock(type, block);\n\n            List<Block> fields = fieldExtractor.apply(block);\n            for (int i = 0; i < fieldBuilders.size(); i++) {\n                fieldBuilders.get(i).addBlock(fields.get(i));\n            }\n        }\n\n        private void build(ImmutableList.Builder<ColumnStatistics> output)\n        {\n            output.add(statisticsBuilder.buildColumnStatistics());\n            fieldBuilders.forEach(fieldBuilders -> fieldBuilders.build(output));\n        }","sourceCodeStart":895,"sourceCodeEnd":931,"githubUrl":"https://github.com/prestodb/presto/blob/55bb57d202de3b926896fa966c2c4a44c779634e/presto-orc/src/main/java/com/facebook/presto/orc/OrcWriteValidation.java#L895-L931","documentation":"OrcWriteValidation statistics-extraction guard: a Hive/ORC column type has no mapping to a statistics builder or field extractor (the switch on the type fell through to default). The %s names the unsupported Hive type; means the writer cannot compute validation stats for that column type.","triggerScenarios":"Thrown at presto-orc/src/main/java/com/facebook/presto/orc/OrcWriteValidation.java:913 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Cast the column to a supported type before writing with validation","Disable write validation for the job if the type is intentionally exotic","Add support for the type in OrcWriteValidation as an engine fix"],"exampleFix":null,"handlingStrategy":"type-guard","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"55bb57d202de3b926896fa966c2c4a44c779634e","analyzedAt":"2026-09-04T12:50:26.162Z","contentChangedAt":"2026-09-04T12:50:26.162Z","schemaVersion":2},"datasetVersion":"2026-09-11T21:17:09.523Z"}