DB2 - Problem description
Problem IC89963 | Status: Closed |
SQL0901 IS RETURNED FOR A QUERY THAT FETCHES ZERO-LENGTH LARGE OBJECTS ON DPF | |
product: | |
DB2 FOR LUW / DB2FORLUW / 970 - DB2 | |
Problem description: | |
In DPF, if a query is run that is selecting a large object, and if that large object has a length of 0, then a logic problem in the handling of the object might return an sql0901. The db2diag.log would show something like this: 2012-10-15-03.41.10.076746-240 I1452420E856 LEVEL: Severe PID : 01234 TID : 01234567890123PROC : db2sysc 1 INSTANCE: db2inst1 NODE : 001 DB : SAMPLE APPHDL : 1-23456 APPID: 01.234.56.789 AUTHID : TEST EDUID : 123 EDUNAME: db2agent (sample) 1 FUNCTION: DB2 UDB, relation data serv, sqlrr_dump_ffdc, probe:300 DATA #1 : SQLCA, PD_DB2_TYPE_SQLCA, 136 bytes sqlcaid : SQLCA sqlcabc: 136 sqlcode: -901 sqlerrml: 19 sqlerrmc: sqlrh_create_handle sqlerrp : SQLRI09F sqlerrd : (1) 0x00000000 (2) 0x00000000 (3) 0x00000000 (4) 0x00000000 (5) 0xFFFFFFE5 (6) 0x00000001 sqlwarn : (1) (2) (3) (4) (5) (6) (7) (8) (9) (10) (11) sqlstate: For example, a CLOB that contains the empty string '' is the style of data that can result in this. | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * DB2FORLUW 9.7 * **************************************************************** * PROBLEM DESCRIPTION: * * In DPF, if a query is run that is selecting a large object, * * and * * if that large object * * has a length of 0, then a logic problem in the handling of * * the * * object might return * * an sql0901. The db2diag.log would show something like this: * * * * 2012-10-15-03.41.10.076746-240 I1452420E856 LEVEL: * * Severe * * * * PID : 01234 TID : 01234567890123PROC : * * db2sysc 1 * * INSTANCE: db2inst1 NODE : 001 DB : * * SAMPLE * * * * APPHDL : 1-23456 APPID: 01.234.56.789 * * AUTHID : TEST * * * * EDUID : 123 EDUNAME: db2agent (sample) 1 * * * * FUNCTION: DB2 UDB, relation data serv, sqlrr_dump_ffdc, * * probe:300 * * DATA #1 : SQLCA, PD_DB2_TYPE_SQLCA, 136 bytes * * * * sqlcaid : SQLCA sqlcabc: 136 sqlcode: -901 * * sqlerrml: 19 * * * * sqlerrmc: sqlrh_create_handle * * * * sqlerrp : SQLRI09F * * * * sqlerrd : (1) 0x00000000 (2) 0x00000000 (3) * * 0x00000000 * * (4) 0x00000000 (5) 0xFFFFFFE5 (6) * * 0x00000001 * * sqlwarn : (1) (2) (3) (4) (5) * * (6) * * * * (7) (8) (9) (10) (11) * * * * sqlstate: * * * * * * * * For example, a CLOB that contains the empty string '' is the * * style of data that * * can result in this. * **************************************************************** * RECOMMENDATION: * * Upgrade to DB2 9.7 FP9 * **************************************************************** | |
Local Fix: | |
It might be possible to bypass the faulty logic by changing the query to filter out the zero-length large objects earlier in the access plan if those results are not needed. For example, adding a where clause like "where length(clobfield) > 0. | |
available fix packs: | |
DB2 Version 9.7 Fix Pack 9 for Linux, UNIX, and Windows | |
Solution | |
Workaround | |
not known / see Local fix | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 31.01.2013 25.11.2013 25.11.2013 |
Problem solved at the following versions (IBM BugInfos) | |
9.7.FP9 | |
Problem solved according to the fixlist(s) of the following version(s) | |
9.7.0.9 | |
9.7.0.9 |