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

   ## Description
   
   closes #872
   
   Every row written to a table with the record-level index adds an index 
entry, and each entry was encoded by building an `apache_avro::Value` tree and 
validating it against the full `HoodieMetadataRecord` schema. The entry's shape 
is fixed, so `encode_record_index_entry` now writes it straight into Avro 
binary. The generic encoder stays as a test-only reference.
   
   Appending 1M rows with the record index on went from about 21.6 s to about 
3.2 s (about 1.6 s with the index off), measured through the Python binding on 
a local SSD.
   
   ## How are the changes test-covered
   
   - [ ] N/A
   - [x] Automated tests (unit and/or integration tests)
   - [ ] Manual tests
     - [ ] Details are described below
   
   `encode_record_index_matches_generic_avro_encoding` checks byte equality 
with the generic encoding and a decode round trip for UUID and non-UUID file 
ids, a multi-byte-length partition path, non-ASCII text, and instants including 
`i64::MIN`, 0 and -1. The existing record index write and lifecycle suites pass 
unchanged.
   


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