linliu-code opened a new pull request, #681:
URL: https://github.com/apache/hudi-rs/pull/681

   ## Description
   
   `spill-rocksdb` exists so a consumer need not put libclang and a C++ 
toolchain in front of a tier that only engages above 
`hoodie.memory.merge.max.size`, but nothing could actually opt out: `hudi` and 
`hudi-datafusion` both took `hudi-core` with its defaults and forwarded 
nothing, so `rocksdb` reached every consumer through the umbrella crate.
   
   Both now take `hudi-core` with `default-features = false` and forward the 
feature, still default-on. Forwarding from `hudi-datafusion` as well is what 
makes the opt-out hold: a consumer can only opt out of a feature its direct 
dependency exposes, and unification through that crate would otherwise return 
the tier whatever `hudi` asked for. The Python wheel and the cxx bridge keep 
the tier, since dropping it makes a merge past the budget fail instead of 
spilling. Note that `default-features = false` on `hudi` was previously a no-op 
and now genuinely removes the tier.
   
   `AGENTS.md` described the old intent as fact and now describes this. Also 
cross-references the two delete-record schemas: `HoodieDeleteRecordList` is the 
wire schema and `HoodieDeleteRecord` its post-unwrap companion, and the 
singular helpers over the latter are reachable only from that module's own 
tests while the live decode goes through their plural namesakes, which is what 
made them read as dead.
   
   Follow-up to #660 
([discussion](https://github.com/apache/hudi-rs/pull/660#discussion_r3781318368)).
   
   ## How are the changes test-covered
   
   - [ ] N/A
   - [ ] Automated tests (unit and/or integration tests)
   - [x] Manual tests
     - [x] Details are described below
   
   Feature wiring, so it is verified by the dependency graph rather than a 
test: `cargo tree -p hudi -i rocksdb` finds `rocksdb` under the defaults and 
finds nothing under `--no-default-features`, both with and without the 
`datafusion` feature. `cargo check --workspace --all-targets` and the 
`hudi-core` suites are green.
   


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