DB2 - Problem description
| Problem IT00542 | Status: Closed | 
| THE DBMS_LOB.COMPARE FUNCTION AND DBMS_LOB.READ PROCEDURE DO NOT PROCESS CLOBS CORRECTLY IF MULTI-BYTE CHARACTERS ARE PRESENT | |
| product: | |
| DB2 FOR LUW / DB2FORLUW / A50 - DB2 | |
| Problem description: | |
| The dbms_lob.compare function incorrectly expects the unit of 
measurement for the offset_1 and offset_2 parameters to be read 
in terms of the number of bytes, regardless of the type of data 
passed to the lob_1 and lob_2 parameters.  Instead, the 
dbms_lob.compare function should use number of characters as the 
unit of measurement for these parameters in order to correctly 
handle multi-byte character sets. 
 
For example, the following call to the dbms_lob.compare function 
should compare the 2nd character of each string and return -1 
because "a" is not equal to "b".  However, it return 0 because 
it is comparing the second byte of the the double-byte character 
"チ" to the second byte of the character "チ". 
db2 "values(dbms_lob.compare(clob('チa'), clob('チb'), 1, 2, 2))" 
 
Similarly, the following command should fail with SQL0138N (A 
numeric argument of a built-in string function is out of range. 
SQLSTATE=22011), but it returns -1 instead. 
db2 "values(dbms_lob.compare(clob('チa'), clob('チb'), 1, 3, 3))" 
 
The problem can only be hit when the database codepage supports 
multi-byte characters. 
 
The dbms_lob.read procedure has the same problem with the 
"offset" and "amount" parameters. | |
| Problem Summary: | |
| **************************************************************** * USERS AFFECTED: * * All users * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * Upgrade to DB2 version 10.5.0.4. * **************************************************************** | |
| Local Fix: | |
| Solution | |
| The problem is first fixed in DB2 version 10.5.0.4. | |
| Workaround | |
| not known / see Local fix | |
| Timestamps | |
| Date - problem reported : Date - problem closed : Date - last modified : | 24.03.2014 15.09.2014 15.09.2014 | 
| Problem solved at the following versions (IBM BugInfos) | |
| Problem solved according to the fixlist(s) of the following version(s) | |
| 10.5.0.4 |  | 







 
