DB2 - Problem description
| Problem IT18170 | Status: Closed |
WRONG RESULT IS POSSIBLE IF GENERATED ALWAYS EXPRESSION REFERENCES A BUILT-IN FUNCTION WITH MORE THEN ONE STRING INPUT | |
| product: | |
DB2 FOR LUW / DB2FORLUW / B10 - DB2 | |
| Problem description: | |
Insert or update may cause wrong result when the target table
has a GENERATED ALWAYS expression that references a built-in
function with more than one string input.
example:
create table t1 (
i int,
c1 varchar (18),
c2 varchar (18) GENERATED ALWAYS AS
(sysibm.ltrim( c1, X'E6BCA2' ) ));
create or replace variable v varchar(18) for bit data;
set v = X'E6BCA2E6BCA1';
insert into t1 values (1, v, default );
insert into t1 values (2, X'E6BCA2E6BCA1', default );
select hex(c1), hex(c2 ) from t1 order by i;
1 2
------------------------------------
------------------------------------
E6BCA2E6BCA1 A1
E6BCA2E6BCA1 E6BCA1
2 record(s) selected. | |
| Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * ALL * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * Upgrade to DB2 11.1 Mod1 Fix Pack 1 iFix001 * **************************************************************** | |
| Local Fix: | |
Avoid using function with more than one string argument in the definition OF GENERATED ALWAYS column | |
| available fix packs: | |
DB2 Version 11.1 Mod1 Fix Pack1 iFix001 for Linux, UNIX, and Windows | |
| Solution | |
First fixed in DB2 11.1 Mod1 Fix Pack 1 iFix001 | |
| Workaround | |
not known / see Local fix | |
| Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 30.11.2016 01.05.2017 21.06.2017 |
| Problem solved at the following versions (IBM BugInfos) | |
| Problem solved according to the fixlist(s) of the following version(s) | |