shangxinli opened a new pull request, #19080:
URL: https://github.com/apache/hudi/pull/19080

   ### Describe the issue this Pull Request addresses
   
   The existing 
`TestHFileCompatibility#testHbaseReaderSucceedsWhenKeyValueVersionIsSetTo1` 
covers the single-data-block happy path with 5 records, which does not stress 
the load-on-open data structures (data-block index, meta-block index) that 
`HFileWriterImpl`'s trailer points at.
   
   ### Summary and Changelog
   
   This PR adds a parameterized cross-version compat test that writes 5,000 
records across 5 key/value shapes representative of the Metadata Table (MDT) 
partitions (FILES, COLUMN_STATS, RECORD_INDEX, SECONDARY_INDEX, BLOOM_FILTERS), 
reopens each file with HBase 2.4.x HFile.createReader, and asserts:
   
   - the trailer parses (no CorruptHFileException),
   - getEntries() matches the count written,
   - a full forward scan returns every key in order.
   
   A future trailer-layout drift in HFileWriterImpl (field reorder, missed 
field, width change) would fail at least one assertion across these shapes, 
before the change reaches MDT files in production and breaks readers still 
running an older Hudi release.
   
   ### Impact
   
   Test-only. No production code changes. Added test runs in hudi-io module, ~2 
seconds.
   
   ### Risk Level
   
   none — test-only.
   
   ### Documentation Update
   
   N/A.
   
   ### Contributor's checklist
   
   - [x] Read through [contributor's 
guide](https://hudi.apache.org/contribute/how-to-contribute)
   - [x] Change Logs and Impact were stated clearly
   - [x] Adequate tests were added if applicable (this PR is the test)
   - [x] CI passed
   


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