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

   Stacked on #672 — only the top commit is new here.
   
   ### The problem
   
   The v2 engine differs from Hudi's JVM reader in a handful of ways. Most are
   refused: a `CUSTOM` merge mode, schema-on-read, `skip_merge`, sorted output 
all
   raise an error that names what is missing, so nothing comes back looking
   correct when it isn't.
   
   Position-based merge is the exception. `should_merge_use_record_position` is
   hardcoded false in the resolver and the row-number column is dropped in the
   engine, so a read that asks to merge by position is merged by key instead. It
   succeeds. It returns the same rows in every case except a file group holding
   duplicate keys — and there, silently, different ones.
   
   ### The change
   
   `reader_v2::gaps` collects the list in one place, as data rather than as 
prose
   scattered across the modules that happen to not implement each thing. A gap
   knows which reader it differs from and what a caller would see. `read()`
   reports the applicable ones once, at warn level.
   
   Only *silent* gaps belong in the registry — anything already refused says so
   through its error, and repeating it as a warning would train callers to 
ignore
   warnings. `test_an_ordinary_read_has_no_gaps` pins that: a read that asks for
   nothing missing prints nothing.
   
   Also drops an import in `schema::delete`'s tests that no longer resolves to a
   used name.
   
   ### Testing
   
   Three unit tests: the quiet case, the gap requested through 
`ReaderParameters`,
   and the same requested through `ReaderContext` (the engine reads the context,
   so both paths have to count).
   
   Full workspace suite green.
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)


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