Posted: Sun Sep 10, 2006 12:51 pm Post subject: Need help with GE status code.
Hi friends,
I am executing a DLI batch Program. It's IMS calls DB2 program.
The program access low level child segments, do some processing, taking check points, after taking check point number 2, it's doing repostioning, while doing repostioning on the SegmentC, it's abending with status code 'GE'.
--------------------------------------------------------------------------
GE
Explanation:
For call-level programs:
IMS returns this status code when:
* DL/I is unable to find a segment that satisfies the segment search
argument described in a Get call.
* For an ISRT call, DL/I cannot find one of the parents of the segment
being inserted.
* For an ISRT call, DL/I was requested to insert a root segment outside
of the accessible range determined by a SETR statement.
* The program issued a STAT (5) call for OSAM buffer pool statistics,
but the buffer pool does not exist.
* The program issued a STAT (5) call for VSAM buffer subpool
statistics, but the subpools do not exist.
* A nonmessage driven BMP issued a FLD call to an MSDB segment. After
the FLD call but before a commit point, the MSDB segment was deleted.
GE can be returned for this reason after either a SYNC or a CHKP call.
For command-level programs:
* DL/I is unable to find a segment that satisfies the segment described
in a Get command.
* For an ISRT command, DL/I cannot find one of the parents of the
segment you're inserting.
* The program issued a STAT (5) command for ISAM or OSAM buffer pool
statistics, but the buffer pool does not exist.
* The program issued a STAT call for (5) VSAM buffer subpool
statistics, but the subpools do not exist.
| Rather than having an abnormal termination occur, this status code is
| returned to the application program that issued the EXEC DLI command.
Programmer Response: The action you take depends on your program.
Note: When a GNP call for a DEDB sequential dependent segment results in
a GE status code, the I/O area contains a length indication of 10
bytes and the original position of the deleted portion of the
sequential dependent part. Position is at the end of the
sequential dependent chain.
(5) STAT is a Product-sensitive programming interface.
I know about GE status code, The program is working fine in production, I recompiled it in test environment, and running it in test environment to see how it works before changes.
I need suggestions, where and why the program is abending in test, because I did not make any coding changes. Could it be because of PCB ?.
Basically it could be the problem of Segments not found in the Test Database ,probably your test database is not having the database with full segments structure / data not available as in Prod for which the calls are failing. Check out the database structure in the DBD as well as PCB code in the PSB Sources .Hope this helps. _________________ Shekar
Grow Technically
AHReddy,
In your pgm, Are you establishing the repositioning after checkpoint at the segment that you read earlier or the segment after the one you committed?
I mean,If you read 10 Records in Segment C and took checkpoint. Now you need to reposition it, Are you doing at the 10th record that you read already (Say Approach#1) OR are you are trying to reposition at 11th With GT operator kind (Say Approach#2).
If you are going to use Approach#1, it might be problem in programming logic because you are establishing the key on the record which you read and you are failing. (This might not be the case because you took first checkpoint successfully).
If you are using Approach#2, Pgm might have taken a checkpoint at 10th Record and if 10th record is the last record that Segment C physically have, while repositioning you might be coming to reposition at 11th Record which might not be present under respective Setment B. So you might be getting 'GE' error.
My suggestion Display the SSA contents and check for the SSA values at the time of taking Check point and SSA contents while repositioning.
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum