GSTAT output is incorrect for tables with more than 2 billion records [CORE2519] #2929
Submitted by: @ibaseru
Seems that output (or counter) for table record count uses 4 byte integer instead of 8 byte integer, and also uses signed integer.
If this value is converted to hex, and then back to decimal as unsighed, it will be 3720051796 which is close to real record count number. Anyway, 4 byte integer, even unsigned, is not enough, because Firebird 2.x have 48 bit record number limit, not 32bit.
p.s. please, also check GSTAT for other places where overflow can happen, for example, if any index will be created on that table number of nodes (keys) also may be shown incorrectly, if wrong variables are used for that numbers.
====== Test Details ======
I've understand "more than 2 billion records" as more than 2'000'000'000.
The text was updated successfully, but these errors were encountered:
Modified by: Claudio Valderrama C. (robocop)
Version: 2.5 Beta 1 [ 10251 ]
Version: 2.0.5 [ 10222 ]
Version: 2.1.1 [ 10223 ]
Version: 2.5 Alpha 1 [ 10224 ]
Version: 2.0.4 [ 10211 ]
Version: 2.1.0 [ 10041 ]
Version: 2.0.3 [ 10200 ]
Version: 2.0.2 [ 10130 ]
Version: 2.0.1 [ 10090 ]
Version: 2.0.0 [ 10091 ]
Version: 2.1.3 [ 10302 ]
Fix Version: 2.5 RC1 [ 10300 ]
Fix Version: 2.0.6 [ 10303 ] =>
Modified by: @pavel-zotov
status: Closed [ 6 ] => Closed [ 6 ]
QA Status: No test => Cannot be tested
Test Details: I've understand "more than 2 billion records" as more than 2'000'000'000.