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 IT09490 Status: Closed

DB2 CRASH CAUSED BY PACKED DESCRIPTOR INCONSISTENCY AFTER ALTER TABLE SET
TYPE DBCLOB

product:
DB2 FOR LUW / DB2FORLUW / 970 - DB2
Problem description:
Altering DBCLOB column type to the same type and size as it is 
currently e.g.: 
 
$ db2 "CREATE TABLE T1 (ONE INT, TWO DBCLOB(1000000) INLINE 
LENGTH 1000)" 
$ db2 "ALTER TABLE T1 ALTER TWO SET DATA TYPE DBCLOB(1000000)" 
 
may result in column length not being re-calculated properly if 
given column has INLINE LENGTH specified. That may lead to 
runtime crash because of detected memory corruption while 
executing a query containing that column. 
 
Possible stack (may differ) 
 
FUNCTION: DB2 UDB, SQO Memory Management, 
sqloDiagnoseFreeBlockFailure, probe:10 
MESSAGE : Possible memory corruption detected. 
[...] 
pdLog + 0xE4 
@78@sqloDiagnoseFreeBlockFailure__FP8SMemFBlkCb + 0x158 
sqlofmblkEx + 0xC 
sqlra_sqlC_mem_free_block__FP8sqlrr_cbUlPv + 0x4C 
sqlra_sqlC_mem_free_block__FP8sqlrr_cbUlPv@glue887 + 0x74 
sqlra_fp_dealloc__FP15sqlra_func_path + 0x184 
sqlra_fp_dealloc__FP15sqlra_func_path@glue886 + 0x74 
sqlra_free_section__FP8sqlrr_cbP25sqlra_sql_context_siblingiN23+ 
0x324 
sqlra_sqlC_free_section__FP8sqlrr_cbP25sqlra_sql_context_sibling 
i + 0xA0 
sqlra_sqlC_get_stmt__FP8sqlrr_cbPUcUiUciP17sqlra_cached_stmtPi + 
0x8C 
 
 
Query, that was being executed should also be dumped to the 
db2diag.log: 
 
FUNCTION: DB2 UDB, relation data serv, sqlrr_dump_sibling, 
probe:140 
MESSAGE : section stmt 
DATA #1 : Hexdump, 180 bytes 
0x0A000200B1F3F300 : 0A20 2020 2020 2020 2020 2020 2020 2020 . 
0x0A000200B1F3F310 : 2053 454C 4543 5420 5457 4F20 4652 4F4D 
SELECT TWO FROM 
0x0A000200B1F3F320 : 2054 3120 4541 5243 485F 4E41 4D45 2C20 T1 
 
To confirm the problem, you can examine packed descriptor the 
specific table by executing: 
$ db2cat -d <db_name> -s <schema> -n <table_name> 
 
and check if column length is lower than inline length for the 
affected column, which is the symptom of corruption, e.g: 
 
$ db2cat -d sample -s db2inst1 -n t1: 
[...] 
 COLUMN NAME               : TWO 
 Length of column name     : 3 
 Column id                 : 1 
 Col type {hex, type}      : 0x0203 ,  DBCLOB 
 Col dist. type {hex, type}: 0x004c ,  DBCLOB 
 Column length             :   1048 
 Blob length               : 2000000 
 Statistic offset          : -1 
 Flags                     : 0x00000090 
                             - SQLRG_MIXED 
                             - SQLRG_NULLIND 
 Codepage                  : 1200 
 Collation name            : IDENTITY 
 Collation ID in hex       : B'00 00 00 02 FF 00 FF FF 
 Statistic Descriptor      : None 
 Security Label ID         : 0
Problem Summary:
**************************************************************** 
* USERS AFFECTED:                                              * 
* ALL                                                          * 
**************************************************************** 
* PROBLEM DESCRIPTION:                                         * 
* See Error Description                                        * 
**************************************************************** 
* RECOMMENDATION:                                              * 
* Upgrade to DB2 version 9.7 Fix Pack 11                       * 
****************************************************************
Local Fix:
Force column length to be re-calculated by altering the table by 
increasing either size or inline length. 
 
Example: 
$ db2 "ALTER TABLE T1 ALTER TWO SET DATA TYPE DBCLOB(1000001)" 
or: 
$ db2 "ALTER TABLE T1 ALTER TWO SET INLINE LENGTH 1001
Solution
First fixed in DB2 version 9.7 Fix Pack 11
Workaround
not known / see Local fix
Timestamps
Date  - problem reported    :
Date  - problem closed      :
Date  - last modified       :
16.06.2015
20.10.2015
20.10.2015
Problem solved at the following versions (IBM BugInfos)
9.7.FP11
Problem solved according to the fixlist(s) of the following version(s)
9.7.0.11 FixList