{"record":{"id":"6dfb4e3cf9807544","repo":"prestodb/presto","slug":"invalid-stripe-footer","errorCode":null,"errorMessage":"Invalid stripe footer","messagePattern":"Invalid stripe footer","errorType":"exception","errorClass":"OrcCorruptionException","httpStatus":null,"severity":"error","filePath":"presto-orc/src/main/java/com/facebook/presto/orc/metadata/ExceptionWrappingMetadataReader.java","lineNumber":96,"sourceCode":"            throws OrcCorruptionException, IOException\n    {\n        try {\n            return delegate.readFooter(hiveWriterVersion, inputStream, dwrfEncryptionProvider, dwrfKeyProvider, orcDataSource, decompressor);\n        }\n        catch (InvalidProtocolBufferException e) {\n            throw new OrcCorruptionException(e, orcDataSourceId, \"Invalid file footer\");\n        }\n    }\n\n    @Override\n    public StripeFooter readStripeFooter(OrcDataSourceId orcDataSourceId, List<OrcType> types, InputStream inputStream)\n            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","sourceCodeStart":78,"sourceCodeEnd":114,"githubUrl":"https://github.com/prestodb/presto/blob/55bb57d202de3b926896fa966c2c4a44c779634e/presto-orc/src/main/java/com/facebook/presto/orc/metadata/ExceptionWrappingMetadataReader.java#L78-L114","documentation":"ORC metadata-reading error: parsing a stripe footer protobuf failed (InvalidProtocolBufferException), wrapped as 'Invalid stripe footer'. One stripe's footer section is corrupt, so the stripe's streams cannot be located; usually points to mid-file corruption.","triggerScenarios":"Thrown at presto-orc/src/main/java/com/facebook/presto/orc/metadata/ExceptionWrappingMetadataReader.java:96 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Identify and exclude the corrupted stripe/file","Verify storage medium integrity","Rewrite the file from source data"],"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"}