yzeng1618 commented on PR #12769:
URL: https://github.com/apache/seatunnel/pull/12769#issuecomment-6409483484

   Thanks @DanielLeens — both fair points, fixed in 0b6c405347:
   
   - **Issue 1 (weak final assertions):** an `AFTER INSERT OR UPDATE` trigger 
now records every committed row write into an audit table (created after the 
seed INSERT, so it captures exactly the sink writes). After both flushes the 
test asserts exactly `rowCount` entries per writer value (200 × value 1 + 200 × 
value 2). If the victim's replay lost its buffered rows, only the winner's 200 
entries would exist and the assertion fails — the IT now actually fails on the 
regression it describes.
   - **Issue 2 (async pg_stat_database):** `queryDeadlockCount()` is gone. The 
test wraps each `JdbcConnectionProvider` in a small counting wrapper that 
returns a proxy `Connection` and counts `rollback()` calls. On these 
connections only the transaction-conflict retry path calls rollback, so 
`rollbacks >= 1` is a deterministic deadlock signal with no stats-publishing 
delay; when no conflict happened (batches did not overlap) the attempt returns 
false and the retry loop runs again.
   
   On the recommended image pin: `PG_IMAGE = "postgis/postgis"` is a 
pre-existing constant shared by every test in `JdbcPostgresIT` (including 
catalog, geometry and DuckDB tests that predate this PR), so pinning it here 
would change unrelated tests' environment. I'd suggest handling it as a 
separate small PR if the maintainers agree — happy to prepare it.
   
   CI is running on the new head.
   


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