makarandhinge opened a new pull request, #3812:
URL: https://github.com/apache/parquet-java/pull/3812

   > **Note:** This PR currently addresses the data-reading side of the Avro 
isolation work. The remaining part of the isolation will be added to this PR in 
a follow-up change.
   
   #3672 
   
   ### Rationale for this change
   
   The Parquet-native `cat`, `head`, and `scan` paths were unnecessarily going 
through Avro schema conversion. This could cause valid Parquet files containing 
INT96 fields or nested LIST structures to fail during schema conversion.
   
   ### What changes are included in this PR?
   
   This PR isolates Avro usage from the Parquet-native data-reading paths.
   
   - Parquet files use `GroupReadSupport` and read the `MessageType` directly 
from the Parquet footer.
   - Native Parquet projections are built without converting the schema to Avro.
   - `cat`, `head`, and `scan` use the native Parquet reader for Parquet input.
   - Non-Parquet and Avro-specific paths continue using the existing Avro 
reader and schema logic.
   - Column selection behavior is preserved, including single-column output.
   - Multi-file scan validation is preserved.
   - Regression tests cover INT96, nested LIST structures, column projections, 
and multiple input files.
   
   ### Are these changes tested?
   
   Yes. Regression tests were added for the affected Parquet CLI paths, 
including INT96, nested LIST structures, column projection, and multi-file 
scanning.
   
   ### Are there any user-facing changes?
   
   This is a bug fix for the Parquet data-reading path. Valid Parquet files 
that previously failed because of unnecessary Avro schema conversion can now be 
processed through the native Parquet reader.
   
   The remaining Avro isolation work will be added to this PR later.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to