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]

Reply via email to