rohankumardubey opened a new pull request, #3957: URL: https://github.com/apache/iggy/pull/3957
## Which issue does this PR address? Closes #3635 ## Rationale The PostgreSQL source advanced tracking offsets, deleted or marked rows, and consumed CDC changes before Iggy confirmed delivery. A failed send could therefore permanently skip source records. ## What changed? PostgreSQL polling now stages cursor updates and row operations until the runtime reports a successful batch acknowledgment. NACK discards the staged work, while ACK commits the state and performs the pending delete or mark operations. CDC now peeks logical-slot changes and advances the slot only after acknowledgment. A deterministic regression test stops Iggy during delivery and verifies that the PostgreSQL rows are redelivered after restart. ## Local Execution - Passed `cargo fmt --all -- --check` - Passed `cargo clippy -p iggy_connector_postgres_source -p integration --all-features --all-targets -- -D warnings` - Passed all 70 PostgreSQL source unit tests - Passed all 7 PostgreSQL polling integration tests - Passed both PostgreSQL CDC integration tests - Passed the deterministic kill-server regression test - Passed `git diff --check` -- 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]
