{"record":{"id":"8d82241887edcf1e","repo":"prestodb/presto","slug":"invalid-stripe-row-index","errorCode":null,"errorMessage":"Invalid stripe row index","messagePattern":"Invalid stripe row index","errorType":"exception","errorClass":"OrcCorruptionException","httpStatus":null,"severity":"error","filePath":"presto-orc/src/main/java/com/facebook/presto/orc/metadata/ExceptionWrappingMetadataReader.java","lineNumber":108,"sourceCode":"            throws IOException\n    {\n        try {\n            return delegate.readStripeFooter(orcDataSourceId, types, inputStream);\n        }\n        catch (InvalidProtocolBufferException e) {\n            throw new OrcCorruptionException(e, orcDataSourceId, \"Invalid stripe footer\");\n        }\n    }\n\n    @Override\n    public List<RowGroupIndex> readRowIndexes(HiveWriterVersion hiveWriterVersion, InputStream inputStream, List<HiveBloomFilter> bloomFilters)\n            throws OrcCorruptionException, IOException\n    {\n        try {\n            return delegate.readRowIndexes(hiveWriterVersion, inputStream, bloomFilters);\n        }\n        catch (InvalidProtocolBufferException e) {\n            throw new OrcCorruptionException(e, orcDataSourceId, \"Invalid stripe row index\");\n        }\n    }\n\n    @Override\n    public List<HiveBloomFilter> readBloomFilterIndexes(InputStream inputStream)\n            throws OrcCorruptionException, IOException\n    {\n        try {\n            return delegate.readBloomFilterIndexes(inputStream);\n        }\n        catch (InvalidProtocolBufferException e) {\n            throw new OrcCorruptionException(e, orcDataSourceId, \"Invalid bloom filter\");\n        }\n    }\n}\n","sourceCodeStart":90,"sourceCodeEnd":124,"githubUrl":"https://github.com/prestodb/presto/blob/55bb57d202de3b926896fa966c2c4a44c779634e/presto-orc/src/main/java/com/facebook/presto/orc/metadata/ExceptionWrappingMetadataReader.java#L90-L124","documentation":"ORC metadata-reading error: parsing the stripe row-index protobuf failed (InvalidProtocolBufferException), wrapped as 'Invalid stripe row index'. The row group positions/checkpoints for a stripe are unreadable, preventing row-group level seeks.","triggerScenarios":"Thrown at presto-orc/src/main/java/com/facebook/presto/orc/metadata/ExceptionWrappingMetadataReader.java:108 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Skip row-group indexes by reading without predicate pushdown as a workaround","Verify file integrity and restore from source if corrupt","Report if files produced by Presto's writer consistently fail this check"],"exampleFix":null,"handlingStrategy":"try-catch","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"}