zhangshenghang opened a new pull request, #12654:
URL: https://github.com/apache/seatunnel/pull/12654

   ## Purpose of the pull request
   
   CDC / message-queue e2e suites in this PR all shared one flaky pattern: a 
fixed sleep standing in for "the data has been captured / is visible", followed 
either by a one-shot assertion or by an already-polling assertion that made the 
sleep pure overhead. This PR makes the waits condition-based and removes the 
redundant ones, keeping every assertion unchanged:
   
   - `OracleCDCWithSchemaChangeIT`: the first data wait inside 
`assertSchemaEvolution` aborted on the `SQLException` raised while the CDC job 
had not yet auto-created the sink table — which the preceding fixed 10s sleep 
only *hoped* to cover. The wait now uses `ignoreExceptions()` so the 
not-yet-created table retries within its 300s budget, and the redundant sleep 
before the call is removed.
   - `RabbitmqIT`: the two fixed sleeps after publishing messages (3s / 5s) are 
replaced with polling the queue depth via `channel.messageCount(...)` until all 
published messages are visible, so the SeaTunnel job can never start consuming 
before the data is there (and the tests no longer pay the fixed sleeps when the 
broker is fast).
   - `IcebergSinkCDCIT`: eight `sleep(30000)` pre-waits standing immediately 
before already-polling `await().untilAsserted` blocks are removed; their 30s is 
folded into the following budget (120s→150s, 60s→90s), so total patience is 
unchanged. The two sleeps that separate a DML from a subsequent schema DDL are 
intentionally kept.
   - `HudiSinkCDCIT`: same fold for the two 30s pre-waits (60s→90s budget).
   
   ## Verification
   
   - `./mvnw spotless:apply`
   - `./mvnw -pl 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-cdc-oracle-e2e,seatunnel-e2e/seatunnel-connector-v2-e2e/connector-rabbitmq-e2e,seatunnel-e2e/seatunnel-connector-v2-e2e/connector-iceberg-e2e,seatunnel-e2e/seatunnel-connector-v2-e2e/connector-hudi-e2e
 -am -DskipTests package`
   
   No assertion / expected value was changed — only how long and how often the 
tests wait before evaluating them.
   


-- 
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