DB2 - Problem description
Problem IC95854 | Status: Closed |
ERRORS SUCH AS SQL0313N AFTER A CLI APPLICATION EXECUTES DELETE or UPDATE with WHERE CURRENT OF <cursor-name> clause | |
product: | |
DB2 FOR LUW / DB2FORLUW / A10 - DB2 | |
Problem description: | |
After an application that uses the CLI (Call Level Interface) API has executed a DELETE or UPDATE statement with WHERE CURRENT OF <cursor-name> clause, applications might get errors such as SQL0313N when they later execute another SQL statement. That is because when a CLI application executes a DELETE or UPDATE statement with WHERE CURRENT OF <cursor-name> clause the CLI package section for a CLI statement handle that is still open might incorrectly be released and then the same CLI package section is reused for a different SQL statement. | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * Users of applications that use the CLI (Call Level * * Interface) API to connect to DB2 for Linux, UNIX and Windows * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * . * **************************************************************** | |
Local Fix: | |
As a workaround you can set the isolation level for the CLI statement handle of the DELETE or UPDATE statement with WHERE CURRENT of clause to be the same as of that of the SELECT ... FOR UPDATE ... statement that created cursor <cursor-name>. You can set the isolation level by setting the CLI statement handle attribute SQL_ATTR_TXN_ISOLATION. | |
available fix packs: | |
DB2 Version 10.1 Fix Pack 4 for Linux, UNIX, and Windows | |
Solution | |
Problem was first fixed in Version 10.1 Fix Pack 4 At a minimum, this fix should be applied on the client. | |
Workaround | |
As a workaround you can set the isolation level for the CLI statement handle of the DELETE or UPDATE statement with WHERE CURRENT of clause to be the same as of that of the SELECT ... FOR UPDATE ... statement that created cursor <cursor-name>. You can set the isolation level by setting the CLI statement handle attribute SQL_ATTR_TXN_ISOLATION. | |
BUG-Tracking | |
forerunner : APAR is sysrouted TO one or more of the following: IC95933 IC95934 follow-up : | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 10.09.2013 27.06.2014 27.06.2014 |
Problem solved at the following versions (IBM BugInfos) | |
Problem solved according to the fixlist(s) of the following version(s) | |
10.1.0.4 |