Apologies for a non-informative subject-line, but I was unsure what to quote there.
An abend during the write of a KSDS (in an application program); below is the message populated in JESMSGLG; the application program abend handling routine returned a generic- S000 U0999:
ABNDRTN- Custom ABeND RouTiNe
DSACSRTN- Custom DtaSet-ACceSs RouTiNe
APPLPGM- APPLication ProGraM
IEA794I SVC DUMP HAS CAPTURED: 467
DUMPID=003 REQUESTED BY JOB (XXXXXXXX)
DUMP TITLE=VSAM DYNAMIC RPL DUMP - IDA019RI+075E FEEDBACK CODE:
AA0800D4
...
...
REQ=14 STA=90 --> 90 is the KSDS file-status
From the CEEDUMP:
Call-Chain:
Traceback:
DSA Entry E Offset Statement Load Mod Program Unit Service Status
1 CEEHDSP +00004A4C CEEPLPKA CEEHDSP HLE77A0 Call
2 IGZCFCC +000C4212 IGZCPAC IGZCFCC Exception
3 ABNDRTN +00001BCE ABNDRTN SSSABEND Call
4 IGZCFCC +000002FC IGZCPAC IGZCFCC Call
5 DSACSRTN +00001FC0 DSACSRTN DSACSRTN Call
6 IGZCFCC +000002FC IGZCPAC IGZCFCC Call
7 APPLPGM +00009C44 APPLPGM APPLPGM Call
Traceback:
DSA Entry E Offset Statement Load Mod Program Unit Service Status
1 CEEHDSP +00004A4C CEEPLPKA CEEHDSP HLE77A0 Call
2 IGZCFCC +000C4212 IGZCPAC IGZCFCC Exception
3 ABNDRTN +00001BCE ABNDRTN SSSABEND Call
4 IGZCFCC +000002FC IGZCPAC IGZCFCC Call
5 DSACSRTN +00001FC0 DSACSRTN DSACSRTN Call
6 IGZCFCC +000002FC IGZCPAC IGZCFCC Call
7 APPLPGM +00009C44 APPLPGM APPLPGM Call
Machine State:
ILC..... 0002 Interruption Code..... 000D
PSW..... 078D1000 900EBFFA
GPR0..... 00000000_80000000 GPR1..... 00000000_800003E7 GPR2..... 00000000_1009F40C GPR3..... 00000000_101FA12C
GPR4..... 00000000_100A2868 GPR5..... 00000000_00000000 GPR6..... 00000000_100A1BB0 GPR7..... 00000000_00000000
GPR8..... 00000000_00000002 GPR9..... 00000000_100A1A30 GPR10.... 00000000_1009E100 GPR11.... 00000000_90027DE8
GPR12.... 00000000_900EBFE8 GPR13.... 00000000_100A2878 GPR14.... 00000000_900280E6 GPR15.... 00000000_900EBFE8
FPC...... 00000000
FPR0..... 00000000 00000000 FPR1..... 00000000 00000000
FPR2..... 00000000 00000000 FPR3..... 00000000 00000000
FPR4..... 00000000 00000000 FPR5..... 00000000 00000000
FPR6..... 00000000 00000000 FPR7..... 00000000 00000000
FPR8..... 00000000 00000000 FPR9..... 00000000 00000000
FPR10.... 00000000 00000000 FPR11.... 00000000 00000000
FPR12.... 00000000 00000000 FPR13.... 00000000 00000000
FPR14.... 00000000 00000000 FPR15.... 00000000 00000000
ABEND code: 000003E7 Reason code: 00000000
From whatever little I could discern from IDA019RI and the feedback code was that something went wrong while trying to write the record into the CA which didn't allow a further split. The record being written had the 'exact key incremented by 1', which would mean the next calculated RBA would have attempted an insert in the same block or nearby.
Relevant portions of LISTCAT of the erroneous dataset:
Data Component:
ATTRIBUTES
KEYLEN---------------136 AVGLRECL-------------136 BUFSPACE-----------18432 CISIZE--------------4096
RKP--------------------0 MAXLRECL-------------136 EXCPEXIT----------(NULL) CI/CA----------------180
STRIPE-COUNT-----------1
SHROPTNS(2,3) SPEED UNIQUE NOERASE INDEXED NOWRITECHK UNORDERED REUSE
NONSPANNED EXTENDED EXT-ADDR
STATISTICS
REC-TOTAL-------31369375 SPLITS-CI----------21924 EXCPS------------2916863
REC-DELETED-------170867 SPLITS-CA------------305 EXTENTS---------------13
REC-INSERTED-----1963385 FREESPACE-%CI---------40 SYSTEM-TIMESTAMP:
REC-UPDATED------------0 FREESPACE-%CA---------40 X'D18612827A501FCA'
REC-RETRIEVED---31594717 FREESPC-------4826906624
ALLOCATION
SPACE-TYPE------CYLINDER HI-A-RBA-----11649024000
SPACE-PRI-----------1000 HI-U-RBA-----11449221120
SPACE-SEC------------200
Index Component:
ATTRIBUTES
KEYLEN---------------136 AVGLRECL---------------0 BUFSPACE---------------0 CISIZE-------------10240
RKP--------------------0 MAXLRECL-----------10233 EXCPEXIT----------(NULL) CI/CA------------------5
SHROPTNS(2,3) RECOVERY UNIQUE NOERASE NOWRITECHK UNORDERED REUSE EXTENDED
EXT-ADDR
STATISTICS
REC-TOTAL----------15755 SPLITS-CI------------305 EXCPS------------5864492 INDEX:
REC-DELETED------------0 SPLITS-CA-------------88 EXTENTS---------------27 LEVELS-----------------4
REC-INSERTED-----------0 FREESPACE-%CI----------0 SYSTEM-TIMESTAMP: ENTRIES/SECT----------13
REC-UPDATED--------34745 FREESPACE-%CA----------0 X'D18612827A501FCA' SEQ-SET-RBA----------------0
REC-RETRIEVED----------0 FREESPC----------1996800 HI-LEVEL-RBA-------119808000
ALLOCATION
SPACE-TYPE---------TRACK HI-A-RBA-------163328000
SPACE-PRI------------201 HI-U-RBA-------161331200
SPACE-SEC-------------41
It'd be great if someone can help me understand what really went down in this case and if my understanding is correct. Also, it'll be very helpful if some reading material is recommended to better understand these errors, the VSAM modules in question - like IDA019RI (I had some difficulty in getting around the feedback code).
Grateful for any guidance.
Thank you.