I have a VSAM file with RECSZ (80 80). I defined the AIX file with using the same VSAM file. And, the RECSZ of the AIX is RECSZ (3338,99015). While running my JCL, I got S806 due to the RECSZ in AIX. So, my IDCAMS step returned RC 0012.
Here is my calculation for the Max Rec Length,
= 5 + (size of alternate key) + (size of primary key * max number of duplicates)
= 5 + 9 + (33 * 23260)
But, the Max. length of AIX RECSIZE = 767750
So, my AIX record length is exceeded the limit. I have tried with the maximum RECSZ limit. But, again I got the same S806 abend. Can anybody tell me how to resolve this issue?
Joined: 14 Mar 2007 Posts: 8657 Location: Back in jolly old England
I got S806 due to the RECSZ in AIX
And this is due to the size of the AIX.
May I suggest that you carefully read the description of an S806 abend.
I have done your research for you - see below - .
Explanation: The supervisor, or the Supervisor Call (SVC) for the BLDL (build a directory entry list) macro, detected an error during the processing of a LINK(X), XCTL(X), ATTACH(X), or LOAD macro with the EP (entry point) or EPLOC (EP location (address)) operand.
The reason code in register 15 identifies the error:
The system could not find the module, whose entry point is the value of the EP or EPLOC operand, in the indicated library (private library, job library, or link library). This situation can occur when LSEARCH=YES is specified on the macro and the limited library search fails to locate the module. For an alias name, ensure that the entry point attributes match that of the load module which was previously loaded (that is, authorization, RMODE, entry point displacement).
An uncorrectable I/O error occurred when the BLDL control program routine attempted to search the directory of the library that contained the program whose entry point was specified in the EP or EPLOC operand. This can occur if the specified library is an uninitialized partitioned data set (PDS).
An incorrect data extent block (DEB) has been detected by the BLDL control program. The DEB was built in other than protect key 0 through 7.
The supervisor attempted to search a library for the program that the EP or EPLOC operand specifies and found that the library data control block (DCB) is not open.
A program issued a LOAD macro with the explicit load option, but there is no DCB parameter. For explicit loads, the program must supply the DCB parameter with the macro because the system searches for the module that the LOAD specifies only in the library that the DCB parameter specifies.
The system could not find the module, whose entry point is the value of an EP or EPLOC operand of a XCTL(X) macro, in the link pack area (LPA), which is where the module must be when the module is requested by an SVC routine.
An SVC routine issued a XCTL(X) macro for a module. The system tried to search the link pack area directory to find the module, but the directory had not as yet been built.
The data control block (DCB), included as part of a LINK(X), LOAD, XCTL(X), or ATTACH(X) macro is incorrect.
System Action: The system issues a message depending on the reason code accompanying the abend:
The system issues an ABEND dump.
Application Programmer Response: If the reason code is X'04', this is probably a user error. Make sure that the requesting program was not incorrectly modified. Make sure that the source library was indicated correctly and that the indicated library does contain the requested program. For an alias name, make sure the alias attributes match the attributes of the load module which was already loaded; check the library authorization, RMODE, and alias entry point displacement). Also, check that there are no duplicate aliases or related primary module names in the library concatenation. MVS expects that all module names, and aliases, are unique across every library. Correct the error, and run the job step again.
If the reason code is X'14' or X'18', report this completion code to the system programmer.
If the reason code is X'0C' or a X'1C', it is a probable user error. Make sure that the DCB for the library is valid and open. Correct the error and run the job step again.
System Programmer Response: For reason code X'08', resubmit the job. Then have the operator enter a START GTF command specifying tape output, MODE=EXT and TIME=YES. Have the operator reply TRACE=IO in response to message AHL100A.
Format the output with the IPCS GTFTRACE subcommand.
If the error recurs and the program is not in error, see the system programmer response for messages in the job log.
For reason code X'2C' or if the problem persists, search problem reporting data bases for a fix for the problem. If no fix exists, contact the IBM Support Center. Provide the ABEND dump and the source program listing for the job.
Joined: 23 Nov 2006 Posts: 19270 Location: Inside the Matrix
kind of intresting to know more about throwing S806 for RC=4, how good this bargain is?
It is a rather terrible bargain. . .
Some sites really, really want an abend rather than merely handling some return code. For this very reason the User Abend is available (rather than forcing some meaningless abend (0cb, 806, etc). When done well, there is a list of user abend codes and what caused them (i.e. a U1212 might be "Customer not on file", a U2000 might be "Invalid start date in parameter", and so on. There would also be a little program that would be executed that received which abend code to issue via the parm (i.e. //ABENDER EXEC PGM=ABENDER,PARM='1212').
Most of the places i've been lately are less insistent on an abend as the scheduling software handles problem situations more elegantly.