WER027A – CONTROL FIELD BEYOND RECORD EXPLANATION

Explanation: The location of the last byte of a SORT/MERGE or JOINKEYS control field is located beyond the maximum record length specified or column 32750, or a variable-length record is shorter than the ending location of a specified SORT/MERGE or JOINKEYS control field.

SORT FIELDS=(7,4,CH,A,26,4,CH,A)   
INREC FIELDS=(1:7,4,5:26,4)
SUM FIELDS=NONE           

Solution: INREC is processed before SORT. OUTREC is processed after SORT. This INREC statement creates an 8-byte record. So you get the error message when your SORT statement uses 26,4 which is beyond the 8-byte record. With OUTREC, you SORT on the input record and then create the 8-byte output record so you don’t get an error message. If you want to use INREC then change the SORT FIELDS to first 8 bytes

INREC FIELDS=(1:7,4,5:26,4) 
SORT FIELDS=(1,4,CH,A,5,4,CH,A)
SUM FIELDS=NONE

WER039A – INSUFFICIENT VIRTUAL STORAGE

Explanation: The amount of virtual storage available to MFX is not large enough to permit execution.

Solution: Verify that virtual storage is specified properly. Check that the region size is sufficient for execution.

WER046A – SORT CAPACITY EXCEEDED

Explanation: All available intermediate storage is exhausted, including any secondary allocation. Sort processing cannot continue.

Action: Supply more intermediate or use the MAXSORT technique.

DYNALLOC : Use the DYNALLOC parameter to dynamically allocate more SORTWK space. The delivered installation default for the product limits the number of SORTWKnn DDs to 32.

If a SORT step fails with WER046A SORT CAPACITY EXCEEDED, first check the JOB LOG  allocation messages to determine how many SORTWKnn DDs were allocated. If the number of SORTWKnn DDs indicated is 32 (SORTWK01 through SORTWK32, for example), then allowing Syncsort MFX for z/OS to dynamically allocate more SORTWKnn DDs will likely allow the job to run. The product can use up to 255 SORTWKnn DDs.

//SYSIN DD *
  SORT FIELDS=(20,30,CH,A),OPTION DYNALLOC=(SYSDA,255) 
/*

OR

//STEP  EXEC  PGM=SORT,PARM=’DYNALLOC=(SYSDA,255)’

It will allow dynamic allocation of up to 255 SORTWKnn DDs using SYSDA esoteric

//STEP  EXEC  PGM=SORT,PARM=’DYNALLOC=(,255)’

It will allow dynamic allocation of up to 255 SORTWKnn DDs using your site’s installation default esoteric

//STEP  EXEC  PGM=SORT
//$ORTPARM DD  *
  DYNALLOC=(SYSDA,255)
/*

You can use $ORTPARM DD to pass parameters to Syncsort MFX when the sort is invoked by a program.

Hardcode SORTWK DDs

If you hardcode the SORTWK DDs in your JCL, you bypass the DDs in the PROC and eliminate some of the uncertainty of the DYNALLOC calculations.

  • Hardcode each of 255 DDs (SORTWK01 – SORTWKFF) in job
  • Include SPACE=(CYL,(mmm,nnn)) on each DD (even though SyncSort will supposedly calculate secondary allocations itself)
  • Include DSNTYPE=LARGE on each DD to allow greater than 4G per volume (each SORTWK is restricted to 1 volume) the aggregate of these DDs should provide sufficient work space for your sort requirements.

Use MAXSORT

SYNCSORT provides the MAXSORT capability to accommodate extremely large data sets. It sorts sections of an input file into intermediate files and re-uses SORTWK space for subsequent sections until the intermediate files for each section can be combined into a single output file. There are particular requirements for using MAXSORT.

WER235A – [ddname] {INREC,OUTREC,REFORMAT} RDW NOT INCLUDED

Explanation: The ddname will be SORTOUT, SORTOFxx, SORTOFx, or the ddname provided by an OUTFIL FNAMES parameter. Four bytes must be provided for the RDW of the variable-length output record in the FIELDS parameter of the INREC, OUTREC, OUTFIL OUTREC, or REFORMAT specification. These bytes must appear at the beginning of the record and must not be edited. For REFORMAT, the RDW must be specified as coming from a variable-length join input data set.

Action: For variable-length records, the first entry in the FIELDS, BUILD, or IFTHEN BUILD parameter must specify or include the unedited 4-byte record descriptor word (RDW), that is, the first field must be 1,4 or 1,m with m greater than 4. DFSORT sets the length of the reformatted record in the RDW.

Read JCL blogs – Click Here SYNCSORT Manual: Click Here

Scroll to Top