Bug #59020 unsigned bigint function returning negative value in 32 bit MySQL server
Submitted: 18 Dec 2010 2:58 Modified: 27 Apr 2018 13:25
Reporter: Alice Wang Email Updates:
Status: Unsupported Impact on me:
None 
Category:MySQL Server: Compiling Severity:S1 (Critical)
Version:5.0.32-Debian_7etch5-log OS:Linux (debian)
Assigned to: CPU Architecture:Any
Tags: unsigned bigint function returning negative value in 32 bit MySQL server

[18 Dec 2010 2:58] Alice Wang
Description:
The declared returning data type of function is unsigned bigint(20) on 32 bit (i486) mysql server i486,but it return a negative value as the following.

Does the 32 bit MySQL server doesn't support 64 bit (bigint) calculation? We can't use 64 bit integer values on 32bit platform without a special library/extension.
  

How to repeat:
On a 32 bit MySQL server,we declare a function call fn_return_bigint with return type bigint(20) , then call this funtion as the following 
mysql>  select fn_return_bigint("aabbcc");
+--------------------------------------------------+
| fn_return_bigint("aabbcc") |
+--------------------------------------------------+
|                             -8552078128837422420 | 
+--------------------------------------------------+

Suggested fix:
MySQL 32 bits to 64 bits migration
[18 Dec 2010 6:43] Sveta Smirnova
Thank you for the report.

But version 5.0.32 is very old and a lot of bugs were fixed since. Please try current version 5.0.91 and if problem still exists provide definition of function fn_return_bigint
[19 Jan 2011 0:00] Bugs System
No feedback was provided for this bug for over a month, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".
[27 Apr 2018 13:25] Yngve Svendsen
Posted by developer:
 
Obsolete MySQL version and no feedback.