DB2 - Problem description
| Problem IC82630 | Status: Closed |
DB2 DUMPS FODC_APPERR (SQL0901N: ROW ELEMENTS ARE NOT COMPATIBLE) WHEN DEBUGGING ASSOCIATIVE ARRAY IN SQL ROUTINES. | |
| product: | |
DB2 FOR LUW / DB2FORLUW / 970 - DB2 | |
| Problem description: | |
DB2 reports FODC_AppErr (SQL0901N: row elements are not
compatible) like as below when debugging associative array in
SQL routines.
2012-04-02-10.47.33.504685+540 E3242A768 LEVEL: Error
PID : 1937476 TID : 5403 PROC : db2sysc 0
INSTANCE: db2inst1 NODE : 000 DB : SAMPLE
APPHDL : 0-2741 APPID:
9.189.214.123.1806.120402014718
AUTHID : db2inst1
EDUID : 5403 EDUNAME: db2agent (SAMPLE) 0
FUNCTION: DB2 UDB, relation data serv, sqlrr_dump_ffdc, probe:10
MESSAGE : ADM14005E The following error occurred: "AppErr".
Data Capture (FODC) has been invoked in the following
mode:
"Automatic". Diagnostic information has been recorded
in
the directory named
"/home/db2inst1/sqllib/db2dump/FODC_AppErr_2012-04-02-10.
47.33.493850_1937476_5403_000/".
2012-04-02-10.47.33.510744+540 I5888A860 LEVEL: Severe
PID : 1937476 TID : 5403 PROC : db2sysc 0
INSTANCE: db2inst1 NODE : 000 DB : SAMPLE
APPHDL : 0-2741 APPID:
9.189.214.123.1806.120402014718
AUTHID : db2inst1
EDUID : 5403 EDUNAME: db2agent (SAMPLE) 0
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: 31
sqlerrmc: row elements are not compatible
sqlerrp : SQLRI4D5
sqlerrd : (1) 0x00000000 (2) 0x00000000 (3)
0x00000000
(4) 0x00000000 (5) 0xFFFFF6D1 (6)
0x00000000
sqlwarn : (1) (2) (3) (4) (5) (6)
(7) (8) (9) (10) (11)
sqlstate: 00000
The stack trace file (*.stack.txt) in the FODC directory shows
stack trace like as below:
pthread_kill
sqloDumpEDU
sqldDumpContext
sqldDumpContext
sqlrr_dump_ffdc
sqlzeDumpFFDC
sqlzeSqlCode
sqlrrSqlCode
getElementZvalue
getElement
Report
ReportUpdates
Process
AtLineEvent
v9_AtLine
dbg_AtLine
atLine
event
run
pvm_entry
sqloInvokeFnArgs
sqloInvokeFnArgs
sqlriInvokerTrusted
sqlriInvokeInvoker
sqlricall
sqlriSectInvoke
The following code and steps illustrates how this problem comes
up.
1. Create a package involves associative array.
CREATE OR REPLACE PACKAGE PKG1
AS
TYPE t1_arr_typ IS TABLE OF t1%rowtype INDEX BY
BINARY_INTEGER;
PROCEDURE PROC1;
END PKG1;
/
CREATE OR REPLACE PACKAGE BODY PKG1
AS
PROCEDURE PROC1
AS
t1_arr t1_arr_typ;
BEGIN
SELECT C1 BULK COLLECT INTO t1_arr from T1;
DBMS_OUTPUT.PUT_LINE(t1_arr(1).C1);
END PROC1;
END PKG1;
/
2. Deploy the package with debug option, then set a break point
on DBMS_OUTPUT.PUT_LINE.
3. Run debug, DB2 server dumps FODC AppError when the procedure
stops at the break point.
Currently, routine debuger does not support associative array.
This APAR will prevent DB2 server from dumping the error in this
situation. | |
| Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * Users who debug associative array in SQL routines. * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * Please upgrade to V9.7 FixPack 7 or later. * **************************************************************** | |
| Local Fix: | |
Please do not attempt to debug associative array. | |
| available fix packs: | |
DB2 Version 9.7 Fix Pack 7 for Linux, UNIX, and Windows | |
| Solution | |
This problem was first fixed in DB2 V9.7 FixPack 7. | |
| Workaround | |
not known / see Local fix | |
| Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 12.04.2012 28.01.2013 28.01.2013 |
| Problem solved at the following versions (IBM BugInfos) | |
9.7.FP7 | |
| Problem solved according to the fixlist(s) of the following version(s) | |
| 9.7.0.7 |
|