{"record":{"id":"6abd49a1ee9a2f9e","repo":"prestodb/presto","slug":"invalid-file-footer","errorCode":null,"errorMessage":"Invalid file footer","messagePattern":"Invalid file footer","errorType":"exception","errorClass":"OrcCorruptionException","httpStatus":null,"severity":"error","filePath":"presto-orc/src/main/java/com/facebook/presto/orc/metadata/ExceptionWrappingMetadataReader.java","lineNumber":84,"sourceCode":"        catch (InvalidProtocolBufferException e) {\n            throw new OrcCorruptionException(e, orcDataSourceId, \"Invalid file metadata\");\n        }\n    }\n\n    @Override\n    public Footer readFooter(HiveWriterVersion hiveWriterVersion,\n            InputStream inputStream,\n            DwrfEncryptionProvider dwrfEncryptionProvider,\n            DwrfKeyProvider dwrfKeyProvider,\n            OrcDataSource orcDataSource,\n            Optional<OrcDecompressor> decompressor)\n            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","sourceCodeStart":66,"sourceCodeEnd":102,"githubUrl":"https://github.com/prestodb/presto/blob/55bb57d202de3b926896fa966c2c4a44c779634e/presto-orc/src/main/java/com/facebook/presto/orc/metadata/ExceptionWrappingMetadataReader.java#L66-L102","documentation":"ORC metadata-reading error: parsing the file footer protobuf failed (InvalidProtocolBufferException), wrapped as 'Invalid file footer'. The footer (stripe directory) region is unreadable — typically corruption or truncation of the tail of the ORC file.","triggerScenarios":"Thrown at presto-orc/src/main/java/com/facebook/presto/orc/metadata/ExceptionWrappingMetadataReader.java:84 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Verify file completeness and size","Check storage-level integrity (HDFS block checksums, S3 ETag)","Restore 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"}