yihua opened a new pull request, #933:
URL: https://github.com/apache/hudi-rs/pull/933

   ## Description
   
   closes #932
   
   The record-key bloom filter and key range in the base file footer are now 
written only when `hoodie.parquet.bloom.filter.enabled` is true or 
`hoodie.index.type` is a bloom index; when neither holds, the footer carries 
nothing extra and no key is hashed. Sizing and format are unchanged when the 
filter is on. hudi-rs locates keys through the record index and never reads 
these footers, while hashing every key at Java's default sizing (30 MurmurHash 
passes per key) was one of the largest costs of a bulk load.
   
   One interop note for review: a Java writer that later upserts into such a 
table with `hoodie.index.type=BLOOM` fails on files without the footer (Java 
behaves the same when the filter is turned off), so a table meant for Java's 
bloom index should be created with `hoodie.parquet.bloom.filter.enabled=true`. 
The Spark parity scenario for Java index lookups now creates its tables that 
way.
   
   ## How are the changes test-covered
   
   - [ ] N/A
   - [x] Automated tests (unit and/or integration tests)
   - [ ] Manual tests
     - [ ] Details are described below
   
   `test_base_file_footer_omits_bloom_filter_by_default` fails on the previous 
default and passes now; the footer content test and the config resolution test 
opt in and still check Java's layout and sizing. Spark parity scenario I 
(SIMPLE, BLOOM and GLOBAL_BLOOM upserts from Spark on rs-written tables) passes 
with the opt-in.
   


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