DB2 - Problem description
| Problem IC87896 | Status: Closed |
SQL/PL SQLEXCEPTION HANDLER DOES NOT HANDLE SQL0973N CORRECTLY | |
| product: | |
DB2 FOR LUW / DB2FORLUW / A10 - DB2 | |
| Problem description: | |
When memory cannot be allocated at SQL executing in a stored
procedure, it returns a SQL0973N (-973). However, any
sqlexception handler does not
return any error because it fails to handle SQL0973N (-973) and
the subsequent processing is
successful unexpectedly.
Consider the following example:
update db cfg for testdb using APPL_MEMORY 2000
CREATE OR REPLACE PROCEDURE memtest
BEGIN
DECLARE var1 CLOB(2M);
DECLARE var2 CLOB(2M);
DECLARE var3 CLOB(2M);
CALL DBMS_OUTPUT.PUT_LINE('MEMTESTPROC');
END@
BEGIN
DECLARE SQLCODE INT;
DECLARE msg VARCHAR(1024);
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
GET DIAGNOSTICS EXCEPTION 1 msg = MESSAGE_TEXT;
CALL DBMS_OUTPUT.PUT_LINE('ERROR '||SQLCODE||' '||
NVL(msg,'NULL'));
END;
CALL memtest();
GET DIAGNOSTICS EXCEPTION 1 msg = MESSAGE_TEXT;
CALL DBMS_OUTPUT.PUT_LINE('OK '||SQLCODE||' '||
NVL(msg,'NULL'));
END@
----------------------------
Output:
OK 0 SQL0973N Not enough storage is available in the
"application shared" heap or stack to process the statement.
SQLSTATE=00000
In this case, even though the SQLCODE is non-zero, it is not
correctly mapped to the relevant SQLSTATE. This leads the
Exception handler to think that the statement was successful. | |
| Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * All * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * Upgrade to DB2 version 1010 fixpack 2 * **************************************************************** | |
| Local Fix: | |
| available fix packs: | |
DB2 Version 10.1 Fix Pack 2 for Linux, UNIX, and Windows | |
| Solution | |
Fixed in DB2 version 1010 fixpack 2 | |
| Workaround | |
not known / see Local fix | |
| Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 04.11.2012 17.01.2013 17.01.2013 |
| Problem solved at the following versions (IBM BugInfos) | |
| Problem solved according to the fixlist(s) of the following version(s) | |
| 10.1.0.2 |
|
| 10.5.0.2 |
|