DB2 - Problem description
Problem IT19808 | Status: Closed |
COMPILED COMPOUND SQL OR A PL/SQL ANONYMOUS BLOCK CAN DELETE ALLROWS OF A ON COMMIT DELETE ROWS TEMPORARY TABLE | |
product: | |
DB2 FOR LUW / DB2FORLUW / A50 - DB2 | |
Problem description: | |
If an application has created a declared global temporary table (DGTT) or has instantiated a created GLOBAL temporary table using the ON COMMIT DELETE ROWS option (default), then issuing a compiled compound SQL statement or a PL/SQL anonymous block might delete all the rows of those tables in that connection, even though no commit has been issued. | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * ALL * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * Upgrade to Db2 10.5 Fix Pack 9 or higher * **************************************************************** | |
Local Fix: | |
Possible ways to avoid this issue include: 1. Using the ON COMMIT PRESERVE ROWS option for global temporary tables and explicitly delete rows from those tables rather than relying on ON COMMIT DELETE rows. 2. Reworking the compound SQL (or PL/SQL Anonymous block) as a procedure that is called. | |
Solution | |
First fixed in Db2 10.5 Fix Pack 9 | |
Workaround | |
not known / see Local fix | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 21.03.2017 29.09.2017 12.10.2017 |
Problem solved at the following versions (IBM BugInfos) | |
9.0. | |
Problem solved according to the fixlist(s) of the following version(s) |