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

   ## Purpose
   
   Stabilize the PostgreSQL CDC committed-offset E2E setup without weakening 
its assertions or extending its timeout.
   
   During the last five-day CI audit, the same 
`PostgresCDCIT.testPostgresCdcSnapshotOnlyAndCommittedOffsetStartupModes` 
assertion timed out in unrelated PRs and forks:
   
   - apache/seatunnel#12203: [DanielLeens job 
102392094932](https://github.com/DanielLeens/seatunnel/actions/runs/34207958769/job/102392094932)
   - apache/seatunnel#12152: [CryoThrust job 
101517171106](https://github.com/CryoThrust/seatunnel/actions/runs/34042200157/job/101517171106)
   
   Both failures waited 30 seconds for the replication slot to reach a WAL 
position sampled only after the seed row was already visible in the JDBC sink. 
The source and sink share the same PostgreSQL database, so that global position 
can include WAL generated by the sink table. The source slot commits offsets 
for captured source mutations and therefore is not required to reach that later 
sink-generated WAL position.
   
   ## Change
   
   - Record the WAL position immediately before each seed source mutation, 
including retry updates.
   - Require the replication slot committed LSN to advance strictly beyond the 
latest mutation-start marker.
   - Keep the existing sink visibility, asynchronous failure, timeout, and 
post-restart anti-replay assertions unchanged.
   
   This PR is intentionally separate from apache/seatunnel#11864, which 
addresses production committed-offset recovery after savepoint; this change 
only corrects the E2E seed synchronization condition.
   
   ## Verification
   
   - `./mvnw spotless:apply -DskipTests -nsu`
   - `./mvnw -pl 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-cdc-postgres-e2e 
spotless:apply -DskipTests -nsu`
   - `git diff --check`
   - Independent Maintainer Review: APPROVE
   
   Docker/E2E was not run locally; the GitHub `all-connectors-it-7` matrix is 
the authoritative runtime validation.


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