{"record":{"id":"224dccb0927fc347","repo":"prestodb/presto","slug":"plain-values-reader-does-not-support","errorCode":null,"errorMessage":"Plain values reader does not support: ","messagePattern":"Plain values reader does not support: ","errorType":"exception","errorClass":"ParquetDecodingException","httpStatus":null,"severity":"error","filePath":"presto-parquet/src/main/java/com/facebook/presto/parquet/ParquetEncoding.java","lineNumber":75,"sourceCode":"            switch (descriptor.getType()) {\n                case BOOLEAN:\n                    return new BooleanPlainValuesReader();\n                case BINARY:\n                    return new BinaryPlainValuesReader();\n                case FLOAT:\n                    return new FloatPlainValuesReader();\n                case DOUBLE:\n                    return new DoublePlainValuesReader();\n                case INT32:\n                    return new IntegerPlainValuesReader();\n                case INT64:\n                    return new LongPlainValuesReader();\n                case INT96:\n                    return new FixedLenByteArrayPlainValuesReader(INT96_TYPE_LENGTH);\n                case FIXED_LEN_BYTE_ARRAY:\n                    return new FixedLenByteArrayPlainValuesReader(descriptor.getPrimitiveType().getTypeLength());\n                default:\n                    throw new ParquetDecodingException(\"Plain values reader does not support: \" + descriptor.getType());\n            }\n        }\n\n        @Override\n        public Dictionary initDictionary(ColumnDescriptor descriptor, DictionaryPage dictionaryPage)\n                throws IOException\n        {\n            switch (descriptor.getType()) {\n                case BINARY:\n                    return new BinaryDictionary(dictionaryPage);\n                case FIXED_LEN_BYTE_ARRAY:\n                    return new BinaryDictionary(dictionaryPage, descriptor.getTypeLength());\n                case INT96:\n                    return new BinaryDictionary(dictionaryPage, INT96_TYPE_LENGTH);\n                case INT64:\n                    return new LongDictionary(dictionaryPage);\n                case DOUBLE:\n                    return new DoubleDictionary(dictionaryPage);","sourceCodeStart":57,"sourceCodeEnd":93,"githubUrl":"https://github.com/prestodb/presto/blob/55bb57d202de3b926896fa966c2c4a44c779634e/presto-parquet/src/main/java/com/facebook/presto/parquet/ParquetEncoding.java#L57-L93","documentation":"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.","triggerScenarios":"Thrown at presto-parquet/src/main/java/com/facebook/presto/parquet/ParquetEncoding.java:75 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","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"],"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"}