rangareddy commented on issue #16697:
URL: https://github.com/apache/hudi/issues/16697#issuecomment-5436809484
This issue was reviewed as part of the JIRA-migrated backlog triage
(HUDI-8421).
**Findings: still open - and there is in-tree evidence that this gap has
already cost someone.**
The API is exactly as described.
`hudi-common/src/main/java/org/apache/hudi/common/model/HoodieRecordMerger.java:146`:
```java
default String[] getMandatoryFieldsForMerging(HoodieSchema dataSchema,
HoodieTableConfig cfg, TypedProperties properties) {
```
with a javadoc pointer at `:136`, consumed by
`FileGroupReaderSchemaHandler.java` at `:222`, `:237` and `:246`.
**Why this matters more than a typical docs ticket:** it is a `default`
method. A custom merger that simply does not override it compiles fine and
silently inherits the default field set - so an implementer gets wrong merge
results with no error to guide them. That is the exact failure mode worth
documenting, and it is worth saying so on the ticket rather than just "update
the docs".
**Supporting evidence from inside the repo:**
`hudi-trino/src/main/java/io/trino/plugin/hudi/HudiUtil.java:574` carries a
comment noting it is *"mirroring
`FileGroupReaderSchemaHandler.getMandatoryFieldsForMerging`: the ordering …"*.
An in-repo consumer had to re-derive this contract by hand - which is fairly
direct evidence that it is under-specified and easy to get wrong.
One practical note: `apache/hudi` has no `docs/` or `website/` tree, so the
deliverable lives in the separate site source.
Keeping this open.
--
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]