DB2 - Problem description
Problem IT20868 | 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 / B10 - 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 11.1 Mod 2 Fix Pack 2 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. | |
available fix packs: | |
DB2 Version 11.1 Mod 2 Fix Pack 2 for Linux, UNIX, and Windows | |
Solution | |
First fixed in DB2 11.1 Mod 2 Fix Pack 2 | |
Workaround | |
not known / see Local fix | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 05.06.2017 27.06.2017 27.06.2017 |
Problem solved at the following versions (IBM BugInfos) | |
Problem solved according to the fixlist(s) of the following version(s) |