apache / apache/parquet-java

Thrift projection does not handle new (optional) fields in requestedSchema

Open
#1,864 1 comment 0 reactions 0 assignees View on GitHub
Component: Java Component: Parquet Priority: Major Type: bug
Dominant language
Java
Stars
3.1k
Forks
1.6k
Avg merge
3d 12h
Merged PRs (30d)
33

Description

It should be valid to request an optional field that is not present in a file (it should be assumed to be null) but instead this throws eagerly in:

https://github.com/apache/parquet-mr/blob/d6f082b9be5d507ff60c6bc83a179cc44015ab97/parquet-hadoop/src/main/java/org/apache/parquet/hadoop/api/ReadSupport.java#L58

**Reporter**: [Alex Levenson](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=alexlevenson) / @isnotinvain

**Note**: *This issue was originally created as [PARQUET-347](https://issues.apache.org/jira/browse/PARQUET-347). Please see the [migration documentation](https://issues.apache.org/jira/browse/PARQUET-2502) for further details.*

Contributor guide

No contributing guide indexed for this repository

Research direction

Start in parquet-hadoop/src/main/java/org/apache/parquet/hadoop/api/ReadSupport.java at the referenced line and trace how requestedSchema fields are validated against the file schema. Confirm the behavior for an optional field absent from the file, then verify that projection treats it as null rather than throwing eagerly.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
data
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.