home clear 64x64
en blue 200x116 de orange 200x116 info letter User
suche 36x36
Latest versionsfixlist
11.1.0.7 FixList
10.5.0.9 FixList
10.1.0.6 FixList
9.8.0.5 FixList
9.7.0.11 FixList
9.5.0.10 FixList
9.1.0.12 FixList
Have problems? - contact us.
Register for free anmeldung-x26
Contact form kontakt-x26

DB2 - Problem description

Problem IC84899 Status: Closed

DATABASE OPERATIONS MIGHT FAIL WITH "KEY DATA MISMATCH" ERRORS,
OR ROWS THAT EXIST IN THE DATABASE CANNOT BE FOUND

product:
DB2 FOR LUW / DB2FORLUW / A10 - DB2
Problem description:
This APAR applies to Unicode databases using language aware 
collation where a column of string type (for example: char, 
varchar, clob types) contain invalid UTF-8 characters. 
 
This APAR does not apply if  there is no invalid UTF-8 character 
in any of the columns.  See 
http://www.unicode.org/versions/Unicode6.0.0/ch03.pdf (Table 
3-7) for well formed UTF-8 Byte Sequences. 
 
If there are invalid UTF-8 characters in a Unicode database 
created using language aware collation, the following errors can 
occur: 
 
1) SET INTEGRITY may fail with the following error: 
 
SQL0901N  The SQL statement or command failed because of a 
database system error. (Reason "Key data mismatch encountered 
during key delete".) 
SQLSTATE=58004 
 
2) DELETE of a row that exists in the table may fail with the 
following error: 
 
SQL0100W  No row was found for FETCH, UPDATE or DELETE; or the 
result of a query is an empty table.  SQLSTATE=02000 
 
3). Incorrect data is returned from the sort statement or data 
is not sorted correctly. 
 
 
This APAR is applicable if : 
 
1.  The Unicode database using language aware collation was 
created on a previous release, migrated to v10.1.0, and had a 
column using a string type  that contains invalid UTF-8 
characters. 
 
2.  A new Unicode database is  created using language aware 
collation on v10.1. 0 and one of columns is using a string type 
contains invalid UTF-8 characters. 
 
The issue affects database collation. If there  is no other 
object that depends on that column, fix the invalid character to 
get the correct sort order in the query processing. If the 
database contains other objects, such as indexes or MQT, which 
depend on the column containing invalid characters, then drop 
the database object(s) that depend on the object with invalid 
characters.  Apply the APAR. Recreate or refresh the affected 
object(s). Rebind the static packages. 
 
In the following example, a hex value is being inserted that 
denotes an invalid UTF-8 character, resulting in the server 
failing to delete the row: 
 
db2 "CREATE DB WSDB USING CODESET UTF-8 TERRITORY US COLLATE 
USING SYSTEM_819_US" 
db2 connect to wsdb 
db2 "create table t1 '(c1 varchar(20))'" 
db2 "insert into t1 values ('ROMANIA'), ('SAINT'), 
(x'52C9554E494F4E')" 
db2 "create index i1 on t1 (c1)" 
 
db2 delete from t1 where "c1=x'52C9554E494F4E'" 
SQL0100W  No row was found for FETCH, UPDATE or DELETE; or the 
result of a query is an empty table.  SQLSTATE=0200 
 
To fix the issue in the example: Drop the index, apply the APAR, 
and recreate the index.
Problem Summary:
**************************************************************** 
* USERS AFFECTED:                                              * 
* All platforms except aix, linuxppc and linux390.             * 
**************************************************************** 
* PROBLEM DESCRIPTION:                                         * 
* See Error Description                                        * 
**************************************************************** 
* RECOMMENDATION:                                              * 
* Upgrade to DB2 v10.1.0.1 (v10 fp1).                          * 
****************************************************************
Local Fix:
available fix packs:
DB2 Version 10.1 Fix Pack 1 for Linux, UNIX, and Windows
DB2 Version 10.1 Fix Pack 2 for Linux, UNIX, and Windows
DB2 Version 10.1 Fix Pack 3 for Linux, UNIX, and Windows
DB2 Version 10.1 Fix Pack 4 for Linux, UNIX, and Windows
DB2 Version 10.1 Fix Pack 3a for Linux, UNIX, and Windows
DB2 Version 10.1 Fix Pack 6 for Linux, UNIX, and Windows

Solution
Upgrade to DB2 v10.1.0.1 (v10 fp1).
Workaround
not known / see Local fix
Timestamps
Date  - problem reported    :
Date  - problem closed      :
Date  - last modified       :
25.06.2012
13.09.2012
13.09.2012
Problem solved at the following versions (IBM BugInfos)
Problem solved according to the fixlist(s) of the following version(s)
10.1.0.1 FixList
10.5.0.1 FixList