DB2 - Problem description
| Problem IC64092 | Status: Closed |
THE ROUND SQL FUNCTION CAN RETURN THE WRONG RESULT ON A DECFLOAT INPUT VALUES OF Infinity/-Infinity | |
| product: | |
DB2 FOR LUW / DB2FORLUW / 970 - DB2 | |
| Problem description: | |
The scenario can be re-created as follows:
Table creation: create table dectest (col1 decfloat(34));
Insert special values like Infinity/-Infinity: insert into
dectest values(Infinity),(-Infinity)
The ROUND function may return Nan instead of Infinity/-Infinity.
The output appears as follows:
select col1,ROUND(col1,5) from dectest
COL1 2
------------------------------------------
------------------------------------------
Infinity
NaN (wrong result we expect Infinity)
SQL0364W DECFLOAT exception "INVALID OPERATION" has occurred
during "BUILT-IN
FUNCTION" operation. SQLSTATE=0168D
-Infinity
NaN (wrong result , expect: -Infinity)
SQL0364W DECFLOAT exception "INVALID OPERATION" has occurred
during "BUILT-IN
FUNCTION" operation. SQLSTATE=0168D | |
| Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * ROUND SQL FUNCTION on DECFLOAT with INFINITY VALUE * **************************************************************** * PROBLEM DESCRIPTION: * * THE ROUND SQL FUNCTION CAN RETURN THE WRONG RESULT ON * * ADECFLOATINPUT VALUES OF Infinity/-Infinity * **************************************************************** * RECOMMENDATION: * * install this fix * **************************************************************** | |
| Local Fix: | |
Rewrite the SQL query to have a case statement which avoids using the ROUND function on these special values. | |
| available fix packs: | |
DB2 Version 9.7 Fix Pack 2 for Linux, UNIX, and Windows | |
| Solution | |
THE ROUND SQL FUNCTION CAN RETURN THE WRONG RESULT ON A DECFLOAT INPUT VALUES OF Infinity/-Infinity | |
| Workaround | |
not known / see Local fix | |
| Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 22.10.2009 31.05.2010 31.05.2010 |
| Problem solved at the following versions (IBM BugInfos) | |
| Problem solved according to the fixlist(s) of the following version(s) | |
| 9.7.0.2 |
|