A fix is available
APAR status
Closed as program error.
Error description
During precompile of this statement: EXEC SQL DECLARE C1 CURSOR with return for SELECT C1, C2 FROM (SELECT DISTINCT C11 as C1, C22 as C2 FROM T1 WHERE C11 = 1 ) , SYSIBM.SYSDUMMY1 <<== missing correlation name for the table expression DSNH104I issued WHERE C1 =1 END-EXEC. and ABEND0C4 in DSNHSM10 occurred.
Local fix
Add correlation name for table expression.
Problem summary
**************************************************************** * USERS AFFECTED: Users of the DB2 UDB for z/OS and OS/390 * * Precompiler 810 * **************************************************************** * PROBLEM DESCRIPTION: The following SQL statement is missing * * the required correlation name following * * the nested-table-expression: * * * * SELECT C1, C2 * * FROM (SELECT DISTINCT C11 as C1, * * C22 as C2 * * FROM T1 * * WHERE C11 = 1 ) , * * SYSIBM.SYSDUMMY1 * * WHERE C1 =1 * * * * The precompiler should issue error * * message DSNH104I message for the * * invalid syntax, but ABEND0C4 occurs * * instead. * **************************************************************** * RECOMMENDATION: * **************************************************************** Following is an example of a statement missing the correlation name that results in 0C4 abend during the precompile phase: EXEC SQL DECLARE C1 CURSOR WITH RETURN FOR SELECT C1, C2 FROM (SELECT DISTINCT C11 as C1, C22 as C2 FROM T1 WHERE C11 = 1 ) , SYSIBM.SYSDUMMY1 WHERE C1 =1 END-EXEC. Below is correct syntax with a correlation name XXX: EXEC SQL DECLARE C1 CURSOR WITH RETURN FOR SELECT C1, C2 FROM (SELECT DISTINCT C11 as C1, C22 as C2 FROM T1 WHERE C11 = 1 ) XXX , SYSIBM.SYSDUMMY1 WHERE C1 =1 END-EXEC. The following abend occurs for the incorrect syntax instead of the expected DSNH104I error message: IEA995I SYMPTOM DUMP OUTPUT 366 SYSTEM COMPLETION CODE=0C4 REASON CODE=00000004 TIME=14.30.40 SEQ=00030 CPU=0000 ASID=002A PSW AT TIME OF ERROR 078D0001 800373A0 ILC 6 INTC 04 ACTIVE LOAD MODULE ADDRESS=00007000 OFFSET=000303A0 NAME=DSNHPC DATA AT PSW 0003739A - E3302020 0024E330 40280024 AR/GR 0: 80CDD890/00000025 1: 00000000/001738D8 2: 00000000/00000000 3: 00000000/0781FC70 4: 00000000/07802298 5: 00000000/00121C18 6: 00000000/006BFFE0 7: 00000000/0011ECF2 8: 00000000/0000021C 9: 00000000/00170D90 A: 00000000/00173920 B: 00000000/00038830 C: 00000000/001702B8 D: 00000000/00173920 E: 00000000/0011D66E F: 00000000/000372E0 END OF SYMPTOM DUMP
Problem conclusion
The DB2 precompiler is modified to avoid referencing a bad pointer caused by a prior error (DSNH104I in this case), so that it can continue validating the rest of the syntax. After the fix is applied, the precompiler will issue the following error message for the missing correlation name: DSNH104I E DSNHSM10 LINE nn COL nn ILLEGAL SYMBOL "<EMPTY>". SOME SYMBOLS THAT MIGHT BE LEGAL ARE: CORRELATION NAME
Temporary fix
Comments
APAR Information
APAR number
PK74108
Reported component name
DB2 OS/390 & Z/
Reported component ID
5740XYR00
Reported release
810
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2008-10-20
Closed date
2008-11-03
Last modified date
2008-12-02
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UK41294
Modules/Macros
DSNHSM10
Fix information
Fixed component name
DB2 OS/390 & Z/
Fixed component ID
5740XYR00
Applicable component levels
R810 PSY UK41294
UP08/11/19 P F811
Fix is available
Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.
[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSEPEK","label":"Db2 for z\/OS"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"8.1","Edition":"","Line of Business":{"code":"LOB10","label":"Data and AI"}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M","label":"APARs - z\/OS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"8.1","Edition":"","Line of Business":{"code":"","label":""}}]
Document Information
Modified date:
02 December 2008