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]

Reply via email to