00E7000C

Explanation

The application program supplied an invalid address.

System action

The application program abends.

Operator response

Notify the user or system programmer.

System programmer response

Assist the user in determining the invalid address.

User response

Correct the invalid address. See Problem Determination for instructions on how to determine the failing SQL statement and the bad address. Use this information to determine the application's incorrect setting of the address.

Problem determination

At the time of abend the register contents are:
R2
A decimal code identifying the bad data:
1 (1)
The bad FRB address used to locate the FRBPARM.
2 (2)
FRBPARM has the bad address used to locate the RDIIN.
3 (3)
RDIVPARM has the bad address used to locate the SQLDA length.
4 (4)
RDIVPARM has the bad address used to locate the SQLDABC.
5 (5)
RDIVPARM has the bad address used to locate the SQLDA length.
6 (6)
RDIAUXPA has the bad address used to locate the SQLDA length.
7 (7)
RDIAUXPA has the bad address used to locate the SQLDABC.
8 (8)
PVDPTR has the bad address used to locate the data variable.
9 (9)
PVINFO has the bad address used to locate the indicator variable.
10 (A)
Either RDIVPARM or RDIAUXPA has the bad address used to locate the PVARS structure.
11 (B)
RDIAUXPA has the bad address used to locate the SQLN.
12 (C)
RDIAUXPA has the bad address used to locate the SQLDAID.
13 (D)
RDIAUXPA has the bad address used to locate the SQLDABC.
14 (E)
RDIAUXPA has the bad address used to locate the SQLD.
15 (F)
RDIAUXPA has the bad address used to locate the SQLVAR.
16 (10)
PVINFO has the bad address used to locate the indicator variable.
17 (11)
PVDPTR has the bad address used to locate the data variable.
18 (12)
PVDPTR has the bad address used to locate the data variable.
19 (13)
PVDPTR has the bad address used to locate the data variable.
R3
The bad data address.
R4
The length of the data.
R5
The key of the data.
R8
If register 2 = 8 or 9, R8 contains the address of the RDIVPARM. If register 2 = 16 or 17, R8 contains the address of the RDIAUXPA. Otherwise, R8 contains the address of the RDIIN. This is the application's invocation parameter list. The address of the RDIIN may not be valid if the RDIIN could not be located (Register 2 = 1 or 2).

The program name identifies the failing program. The statement number refers to the statement number in the Db2 precompiler listing. The SQL statement executed can then be found in the application program's compiler/assembler listing. For example, if the statement number is X'00E6', refer to statement number 230 in the Db2 precompiler listing. This precompiler statement number can be cross-referenced to the program's compiler/assembler listing.

Collect the following diagnostic items:
  • SYSABEND, SYSUDUMP, or SYSMDUMP output.
  • CICS® attachment facility MVS™ SNAP dump.

Use the following offsets to trace through the control blocks.

PVARS:
Offsets Len Description
0 (0) 4 LENGTH OF BLOCK
4 (4) 12 PVENTY, OCCURS ONCE FOR EACH HOST VARIABLE IN THE SQL STATEMENT
PVENTRY:
Offsets Len Description
0 (0) 2 COLUMN TYPE
2 (2) 2 COLUMN LENGTH
4 (4) 4 PVDPTR, POINTER TO HOST VARIABLE DATA
8 (8) 4 PVINFO, POINTER TO INDICATOR
FRB:
Offsets Len Description
0 (0) 4 BLOCK IDENTIFIER FRB
4 (4) 2 RAL ENTRY NUMBER
6 (6) 2 FVL ENTRY NUMBER
8 (8) 4 FRBPARM, POINTER TO PARAMETER LIST (RDIIN)
12 (C) 2 PARAMETER COUNT
14 (E) 2 RETURN CODE
16 (10) 4 REASON CODE
20 (14) 4 FEEDBACK
24 (18) 4 PRH PC LX/EX VALUE
28 (1C) 2 REQUEST QUALIFIER VALUE
30 (1E) 2 RESERVED
32 (20) 0 END OF USER FRB SECTION
RDIIN:
Offsets Len Description
0 (0) 2 PARM LIST LENGTH
2 (2) 2 FLAGS
4 (4) 2 CALL TYPE
6 (6) 8 PROGRAM NAME
14 (E) 8 TIMESTAMP
22 (16) 2 SECTION #
24 (18) 4 PTR TO ERROR CODE STRUCTURE
28 (1C) 4 RDIVPARM PTR TO USER INPUT VARIABLES (PVARS STRUCTURE)
32 (20) 4 RDIAUXPA PTR TO Db2 RETURN VARIABLES (PVARS STRUCTURE)
36 (24) 2 STATEMENT #
38 (26) 2 STATEMENT TYPE