Skip to content

Return 25P02 for commands in aborted transactions - #2

Merged
tonyalaribe merged 1 commit into
timefusion-upgrade-55from
fix/aborted-transaction-sqlstate
Oct 22, 2026
Merged

tonyalaribe merged 1 commit into
timefusion-upgrade-55from
fix/aborted-transaction-sqlstate

Conversation

@tonyalaribe

@tonyalaribe tonyalaribe commented Oct 22, 2026 •

Copy link
Copy Markdown

Commands issued inside an aborted explicit transaction currently return SQLSTATE 25P01 (no active transaction). Return PostgreSQL's 25P02 (in failed transaction) from both the ordinary-query and BEGIN rejection paths. Commands remain refused until rollback.

Strengthen the existing transaction integration test to require exact 25P02 for SELECT 1 and BEGIN, then verify rollback recovery.

Validation:

  • The strengthened Python test fails on the currently pinned consumer with 25P01 and passes against this corrected source through a real local TimeFusion server.
  • A consumer Rust wire test fails before the change, then passes all four simple/extended × query/BEGIN cases, including exact SQLSTATE and rollback recovery.
  • All 10 selected consumer PGWire regression tests pass with retries disabled; consumer cargo lint passes.
  • Fork cargo fmt --all -- --check, Python syntax, and diff checks pass.

The fork base tree matches consumer pin 1388ea37 exactly. Consumer verification uses a local path to this fork. All 14 standalone fork CI jobs pass, including the three integration variants and clean Linux build. Final immutable consumer-pin validation is running separately.

@tonyalaribe tonyalaribe changed the title Return25P02 for commands in aborted transactions Return 25P02 for commands in aborted transactions Oct 22, 2026
@tonyalaribe
tonyalaribe marked this pull request as ready for review October 22, 2026 06:01
@tonyalaribe
tonyalaribe merged commit 5ba6be7 into timefusion-upgrade-55 Oct 22, 2026
14 checks passed
@tonyalaribe
tonyalaribe deleted the fix/aborted-transaction-sqlstate branch October 22, 2026 06:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant