wombatu-kun opened a new pull request, #19093:
URL: https://github.com/apache/hudi/pull/19093
### Describe the issue this Pull Request addresses
`ITTestHoodieDataSource.testLookupJoin` is intermittently flaky. It surfaced
on the CI of an unrelated PR (#19091): the `test-flink-1 (flink2.1, 1.11.4,
1.15.2)` job failed in `testLookupJoin(...)[5]` (parameter set `{COPY_ON_WRITE,
"rocksdb", false}`) with the lookup join producing `[]` instead of the expected
8 rows. The same test passed on Flink 1.18/1.19/1.20/2.0 in that run and on the
other 7 parameter combinations, so this is a timing flake, not a real
regression. Failing run:
https://github.com/apache/hudi/actions/runs/28368657950/job/84040776186
### Summary and Changelog
The streaming lookup join reads its dimension table through
`HoodieLookupFunction`, whose cache is populated lazily on the first probe row
(`checkCacheReload()`). A teardown / commit-visibility race can occasionally
make the join emit no rows. `execInsertSql` awaits the insert but swallows the
exception, so the empty result is committed to `t2` and the subsequent read
then asserts against an empty table.
- Wrap the insert-and-read in `testLookupJoin` in a retry loop bounded by
the existing `MAX_STREAM_READ_ATTEMPTS`, retrying until the expected row count
materializes.
- Re-running the insert is idempotent because both tables use `uuid` as the
record key, so the upsert never produces duplicates.
- This mirrors the existing stream-read retry pattern
(`submitAndFetchWithRetry`, added in #19030). No production code is changed.
### Impact
None. Test-only change that hardens an existing flaky integration test.
### Risk Level
none
### Documentation Update
none
### Contributor's checklist
- [ ] Read through [contributor's
guide](https://hudi.apache.org/contribute/how-to-contribute)
- [ ] Enough context is provided in the sections above
- [ ] Adequate tests were added if applicable
--
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]