nsivabalan commented on PR #19205: URL: https://github.com/apache/hudi/pull/19205#issuecomment-5221883089
Audited every test @voonhous and @danny0405 asked for against what is actually in the tree, rather than trusting my own summary. **9 of 10 covered as asked; 1 deviation already flagged; 1 real gap, now closed.** | Ask | Status | |---|---| | **#31** incremental query, positive + negative | ✅ 4 tests. Writing them found 2 real read-path bugs | | **#32** MDT enabled, assert MDT resolves `NONE` | ✅ as asked | | **#33** Overwrite → Append without restating the mode | ✅ as asked | | **#34** `_hoodie_file_name` == containing file per row, + replacecommit | ✅ both assertions | | **#28** `isWiderThan` pairs | ✅ full 5×5 matrix, mutually-wider case, plus client-level sibling tests | | **#38** downgrade mock helper returning a selective mode | ✅ `helperFor(...)` across all five modes | | **#40 / #41** strict NULL assertion via a shared helper | ✅ `assertNoMetaFieldsPopulated` in `HoodieSparkWriterTestBase`, used in both files | | **#36** move resolution tests into `TestHoodieTableConfig` | ⚠️ deviated — renamed the class, added the storage round-trip there, kept the fast in-memory cases separate. Rationale on the thread; happy to merge if you disagree | | **#37** streamer restart | ⚠️ **was incomplete — now fixed** | ### The gap @voonhous asked for the restart's second streamer to pass **only `POPULATE_META_FIELDS=false`**. My test passed **nothing at all**. When the ask was written those were the same case; they are not any more: - states **neither** property → inherits `COMMIT_TIME_ONLY` (what I had tested) - states **`populate=false`** → explicit contradiction with the table → **rejected** The second is the case cshuo originally described, *and* it is the breaking change this PR carries into the release notes — so it was precisely the wrong one to leave untested. Added in `e71d4d4e3053`: asserts the rejection, that the failed run left the table's mode untouched, and that no row ended up with a null `_hoodie_commit_time`. Worth noting the audit only caught this because the two cases diverged *after* the ask was written. Following the letter of the request would have covered it; following my paraphrase of it did not. -- 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]
