Skip to content

Conversation

dyemanov
Copy link
Member

We allow to specify isc_tpb_read_consistency alone and at least one driver currently specifies ReadCommitted ReadConsistency mode this way. However, in fact the transaction isolation becomes Snapshot with TRA_read_consistency flag being set too. This causes asserts in the code and I'm not really sure the chase/restart logic works properly in all cases.

Given that such a usage seems quite logical and handy, I suggest to not raise an error but rather imply ReadCommitted instead of Snapshot in this case.

Also, the transaction isolation detection in the trace was changed to be more resistant to weird flag combinations like the one described above and not raise unexpected asserts. It's now also in sync with the value of MON$ISOLATION_MODE.

@dyemanov dyemanov requested a review from hvlad September 21, 2025 07:43
@dyemanov dyemanov self-assigned this Sep 21, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants