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

DATABASE MARKED BAD AND CRASH WHEN ALTER INLINE LENGTH OF COLUMN ON WHICH
SPATIAL INDEX IS DEFINED

product:
DB2 FOR LUW / DB2FORLUW / 980 - DB2
Problem description:
If we try to alter the inline length of a column on which a 
spatial index is defined like in the example below, the database 
could get marked bad and crash: 
 
 
1. Table DDL 
 
CREATE TABLE "GISADME "."GIA4A11T"  ( 
              "OBJECTID" INTEGER NOT NULL , 
              "FEATUREID" INTEGER , 
              "ZORDER" INTEGER , 
              "ANNOTATIONCLASSID" INTEGER , 
              "ELEMENT" BLOB(1048576) LOGGED NOT COMPACT , 
              "SYMBOLID" INTEGER , 
              "STATUS" SMALLINT , 
              "TEXTSTRING" VARCHAR(255) , 
              "FONTNAME" VARCHAR(255) , 
              "FONTSIZE" DECIMAL(31,8) , 
              "USERID" VARCHAR(8) , 
              "ZSP_AEND" TIMESTAMP , 
              "SHAPE" "DB2GSE  "."ST_MULTIPOLYGON" ) 
             IN "TBLS32" INDEX IN "TBLS32" LONG IN "TBLS32" ; 
 
CREATE INDEX "GISADME "."A41_IX1" ON "GISADME "."GIA4A11T" 
            ("SHAPE" ) 
            EXTEND USING "DB2GSE 
"."SPATIAL_INDEX" (.360000e1,.180000e2,.000000e0) DISALLOW 
REVERSE SCANS; 
 
2. Alter statement: 
 
alter table gisadme.gia4a11t alter column shape set inline 
length 8000; 
 
3. db2diag.log errors 
 
2010-02-15-18.10.22.184000+060 I1924396F543 LEVEL: Severe 
PID : 2312 TID : 1836 PROC : db2syscs.exe 
INSTANCE: DB2 NODE : 000 DB : BGISDB_Q 
APPHDL : 0-117 APPID: *LOCAL.DB2.100215170447 
AUTHID : DB2ADMIN 
EDUID : 1836 EDUNAME: db2agent (BGISDB_Q) 0 
FUNCTION: DB2 UDB, index manager, sqliExtendKeyLen, probe:10 
MESSAGE : IndexObj: (11;16). RC= 
DATA #1 : Hexdump, 4 bytes 
0x000000000DC0DCF0 : 2F00 0487 /... 
 
2010-02-15-18.10.22.184000+060 I1924941F656 LEVEL: Severe 
PID : 2312 TID : 1836 PROC : db2syscs.exe 
INSTANCE: DB2 NODE : 000 DB : BGISDB_Q 
APPHDL : 0-117 APPID: *LOCAL.DB2.100215170447 
AUTHID : DB2ADMIN 
EDUID : 1836 EDUNAME: db2agent (BGISDB_Q) 0 
FUNCTION: DB2 UDB, catalog services, sqlrlalt, probe:990 
MESSAGE : ZRC=0x8704002F=-2029780945=SQLD_PARM "PARAMETER ERROR" 
DIA8544C An invalid data type was encountered, the value was 
"". 
DATA #1 : String, 33 bytes 
Probe that returned non-zero rc: 
DATA #2 : unsigned integer, 4 bytes 
10600 
 
2010-02-15-18.10.22.231000+060 I1925599F550 LEVEL: Severe 
PID : 2312 TID : 1836 PROC : db2syscs.exe 
INSTANCE: DB2 NODE : 000 DB : BGISDB_Q 
APPHDL : 0-117 APPID: *LOCAL.DB2.100215170447 
AUTHID : DB2ADMIN 
EDUID : 1836 EDUNAME: db2agent (BGISDB_Q) 0 
FUNCTION: DB2 UDB, global services, sqlzeMapZrc, probe:45 
MESSAGE : ZRC=0x8704002F=-2029780945=SQLD_PARM "PARAMETER ERROR" 
DIA8544C An invalid data type was encountered, the value was 
"". 
 
If we specify a higher inline length we might just face a 
SQL0614N  error which might lead to expectation that we can run 
the alter with a lower length, which could lead to crash: 
 
alter table gisadme.gia4a11t alter column shape set inline 
length 
30000; 
 
DB21034E  The command was processed as an SQL statement because 
it was not a 
valid Command Line Processor command.  During SQL processing it 
returned: 
SQL0614N  The index or index extension "A41_IX1" cannot be 
created or altered 
because the combined length of the specified columns is too 
long. 
SQLSTATE=54008
Problem Summary:
**************************************************************** 
* USERS AFFECTED:                                              * 
* ALL                                                          * 
**************************************************************** 
* PROBLEM DESCRIPTION:                                         * 
* DB2 does not support alter of the inline length of a column  * 
* in                                                           * 
* which a spatial index is defined. This APAR will address     * 
* both                                                         * 
* scenarios described above raising a SQL error to inform the  * 
* user                                                         * 
* this operation is not allowed and avoiding the crash or a    * 
*                                                              * 
* misleading SQL0614N.                                         * 
**************************************************************** 
* RECOMMENDATION:                                              * 
* Upgrade to DB2 Version 9.8 Fixpack 0                         * 
****************************************************************
Local Fix:
Do not alter the inline length of a column on which a spatial 
index is defined.
available fix packs:
DB2 Version 9.8 Fix Pack 3 for Linux, UNIX, and Windows
DB2 Version 9.8 Fix Pack 4 for AIX and Linux
DB2 Version 9.8 Fix Pack 5 for AIX and Linux

Solution
Problem was first fixed on DB2 Version 9.8 Fixpack 0
Workaround
not known / see Local fix
Timestamps
Date  - problem reported    :
Date  - problem closed      :
Date  - last modified       :
23.03.2010
10.01.2011
18.02.2011
Problem solved at the following versions (IBM BugInfos)
9.8.FP0
Problem solved according to the fixlist(s) of the following version(s)
9.8.0.3 FixList