64-bit transaction IDs are not stored properly in status vector [CORE6110] #6359
Labels
affect-version: 3.0.0
affect-version: 3.0.1
affect-version: 3.0.2
affect-version: 3.0.3
affect-version: 3.0.4
affect-version: 4.0 Alpha 1
affect-version: 4.0 Beta 1
affect-version: 4.0 Initial
component: engine
fix-version: 3.0.6
fix-version: 4.0 Beta 2
priority: major
qa: cannot be tested
type: bug
Submitted by: @samofatov
Assigned to: @ilya071294
Transaction ID type (TraNumber) has become 64-bit in Firebird 3.0 and later versions.
isc_concurrent_transaction and isc_rec_in_limbo errors report concurrent transaction ID as isc_arg_number (32-bit signed integer).
This results in transaction numbers truncation in 32-bit builds or when status vector is sent over the wire.
I suggest to change transaction ID type to isc_arg_string when it is stored in status vector.
Commits: 199b0a6 641eca3 52ab84e 696673b
The text was updated successfully, but these errors were encountered: