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 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
DB2 Version 10.1 Fix Pack 3 for Linux, UNIX, and Windows
DB2 Version 10.1 Fix Pack 4 for Linux, UNIX, and Windows
DB2 Version 10.1 Fix Pack 3a for Linux, UNIX, and Windows
DB2 Version 10.1 Fix Pack 6 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 FixList
10.5.0.2 FixList