DB2 - Problembeschreibung
Problem IC83957 | Status: Geschlossen |
SQL/PL SQLEXCEPTION HANDLER DOES NOT HANDLE SQL0973N CORRECTLY | |
Produkt: | |
DB2 FOR LUW / DB2FORLUW / 970 - DB2 | |
Problembeschreibung: | |
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-Zusammenfassung: | |
**************************************************************** * USERS AFFECTED: * * All * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * Upgrade to DB2 version 970 fixpack 7 * **************************************************************** | |
Local-Fix: | |
verfügbare FixPacks: | |
DB2 Version 9.7 Fix Pack 7 for Linux, UNIX, and Windows | |
Lösung | |
Problem is fixed in DB2 version 970 fixpack 7 | |
Workaround | |
keiner bekannt / siehe Local-Fix | |
Bug-Verfolgung | |
Vorgänger : APAR is sysrouted TO one or more of the following: IC87896 Nachfolger : | |
Weitere Daten | |
Datum - Problem gemeldet : Datum - Problem geschlossen : Datum - der letzten Änderung: | 05.06.2012 29.01.2013 29.01.2013 |
Problem behoben ab folgender Versionen (IBM BugInfos) | |
9.7.0 | |
Problem behoben lt. FixList in der Version | |
9.7.0.7 |