Joob1n commented on PR #346:
URL: https://github.com/apache/paimon-cpp/pull/346#issuecomment-5676531403

   @lxy-9602 @SteNicholas could you take a look when you have a moment?
   
   This is a small correctness fix in the page-index path: `ColumnIndexFilter` 
was guessing the physical type of DECIMAL page bounds from their encoded 
length, so a DECIMAL stored as a 4-byte (precision 7-9) or 8-byte (precision 
17-18) FIXED_LEN_BYTE_ARRAY had its big-endian bounds read little-endian and 
matching pages were pruned away. The fix threads the `SchemaDescriptor` down to 
the leaf and dispatches on `physical_type()`, mirroring what 
`parquet_stats_extractor.cpp` already does for row-group statistics.
   
   The one API-shaped detail worth your eye: 
`ColumnIndexFilter::CalculateRowRanges` gains a `const 
::parquet::SchemaDescriptor*` parameter (internal to 
`src/paimon/format/parquet/`, nothing in `include/`), and a null schema means 
the DECIMAL comparison is skipped so no page is pruned. Happy to change that to 
a hard requirement instead if you prefer.
   
   Details and test results are in the PR description; it closes #345.
   


-- 
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]

Reply via email to