The GitHub Actions job "Flink CDC CI" on flink-cdc.git/fix_flaky_tests has 
failed.
Run started by GitHub user leonardBang (triggered by leonardBang).

Head commit for run:
41147f2b080ea08df012c577081c79d45130d01a / Leonard Xu <[email protected]>
[test][connector/oceanbase] Drain replayed no-PK snapshot rows synchronously in 
binlog phase to avoid an in-flight hasNext race

The previous fix drained trailing at-least-once snapshot duplicates between the
snapshot and binlog phases via hasNextData(iterator). On timeout that helper 
only
calls executor.shutdown(), leaving the background iterator.hasNext() blocked on 
the
shared CollectResultIterator. Once the binlog phase wrote data, that orphaned
hasNext() could fetch and cache a record concurrently with the main thread's 
read,
dropping the first binlog event and reintroducing flakiness.

Remove the async drain. The snapshot phase now only reads (blocking, on the 
calling
thread) until every expected row is observed with at least its expected 
multiplicity.
Because the incremental source finishes the entire snapshot before reading 
binlog,
any replayed snapshot +I rows strictly precede the changelog, so the binlog 
phase
skips those leading snapshot rows synchronously before collecting the expected
changelog. No background hasNext() is left in flight.

Co-Authored-By: Claude Opus 4.7 <[email protected]>

Report URL: https://github.com/apache/flink-cdc/actions/runs/27961381839

With regards,
GitHub Actions via GitBox

Reply via email to