IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

Sort capacity exceeding probelm.


IBM Mainframe Forums -> JCL & VSAM
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
kalyan.v

New User


Joined: 04 Feb 2008
Posts: 65
Location: Hyd

PostPosted: Fri Sep 03, 2010 12:16 pm
Reply with quote

Hi All,

I am getting 'WER046A - Sort capacity exceeded' Error. I searched the forum and i tried DYNALLOC and VSCORE and VSCORET options to resolve this. But i could not resolve this and getting the same error.

Code:

//***************************************************************
//STEP140  EXEC PGM=SORT,PARM='DYNALLOC=(WORK,50),VSCORET=16M'   
//***************************************************************
//SORTWK01 DD  UNIT=WORK,SPACE=(CYL,(100,50))                   
//SORTWK02 DD  UNIT=WORK,SPACE=(CYL,(100,50))                   
//SORTWK03 DD  UNIT=WORK,SPACE=(CYL,(100,50))                   
//SORTWK04 DD  UNIT=WORK,SPACE=(CYL,(100,50))                   
//SORTWK05 DD  UNIT=WORK,SPACE=(CYL,(100,50))                   
//SORTWK06 DD  UNIT=WORK,SPACE=(CYL,(100,50))                   
//SORTWK07 DD  UNIT=WORK,SPACE=(CYL,(100,50))                   
//SORTWK08 DD  UNIT=WORK,SPACE=(CYL,(100,50))                   
//SORTWK09 DD  UNIT=WORK,SPACE=(CYL,(100,50))                   
//SORTWK10 DD  UNIT=WORK,SPACE=(CYL,(100,50))                   
//SORTJNF1 DD  DSN=FILE1,DISP=SHR --> LRECL: 79,Tot recs: 905522
//SORTJNF2 DD  DSN=FILE2,DISP=SHR --> LRECL: 77,Tot recs:     167   
//SORTOUT  DD  DSN=OUTPUT FILE,                     
//             DISP=(NEW,CATLG,DELETE),                         
//             UNIT=SYSDA,SPACE=(CYL,(100,100),RLSE),           
//             DCB=(MODEL.DSCB,RECFM=FB)                         
//SYSIN    DD  *                                                 
    JOINKEYS FILE=F1,FIELDS=(01,18,A)                           
    JOINKEYS FILE=F2,FIELDS=(42,18,A)                           
    REFORMAT FIELDS=(F2:1,77,F1:27,06)                           
    JOIN UNPAIRED,F2                                             
    SORT FIELDS=COPY                                             
/*                                                               
//SYSOUT   DD  SYSOUT=*                                         
//SYSPRINT DD  SYSOUT=*                                         
//SYSUDUMP DD  SYSOUT=*                                         


LOG:


Code:

WER164B  14,924K BYTES OF VIRTUAL STORAGE AVAILABLE, MAX REQUESTED,           
WER164B     0 BYTES RESERVE REQUESTED, 1,028,104 BYTES USED                   
WER146B  12K BYTES OF EMERGENCY SPACE ALLOCATED                               
WER481I  JOINKEYS REFORMAT RECORD LENGTH=   83, TYPE = F                       
WER110I  SORTOUT  : RECFM=FB   ; LRECL=    83; BLKSIZE= 27971                 
WER211B  SYNCSMF  CALLED BY SYNCSORT; RC=0000                                 
WER486A  ERROR IN JNF1 PROCESSING                                             
WER482I  JNF1 STATISTICS                                                       
WER483B  11,768K BYTES OF VIRTUAL STORAGE AVAILABLE, MAX REQUESTED,           
WER483B     0 BYTES RESERVE REQUESTED, 10,992K BYTES USED                     
WER108I  SORTJNF1 : RECFM=FB   ; LRECL=    79; BLKSIZE= 27966                 
WER483B  10,736K BYTES OF VIRTUAL STORAGE AVAILABLE ABOVE THE 16MEG LINE,     
WER483B     0 BYTES RESERVE REQUESTED, 10,708K BYTES USED                     
WER483B  G=20440,B=717                                                         
WER483B  0 PREALLOCATED SORTWORK TRACKS, 0 DYNAMICALLY ALLOCATED,             
WER483B     0 ACQUIRED IN SECONDARY EXTENTS, 0 RELEASED, TOTAL OF 0 TRACKS USED
WER046A  SORT CAPACITY EXCEEDED                                               
WER066A  APROX RCD CNT             717                                         
WER482I  JNF2 STATISTICS                                                       
WER483B  2,556K BYTES OF VIRTUAL STORAGE AVAILABLE, MAX REQUESTED,             
WER483B     0 BYTES RESERVE REQUESTED, 1,808K BYTES USED                       
WER108I  SORTJNF2 : RECFM=FB   ; LRECL=    77; BLKSIZE= 27951                 
WER483B  1,524K BYTES OF VIRTUAL STORAGE AVAILABLE ABOVE THE 16MEG LINE,       
WER483B     0 BYTES RESERVE REQUESTED, 1,524K BYTES USED                       
WER483B  G=386                                                                 
WER416B  SORTJNF2 : EXCP'S=2,UNIT=3390,DEV=2228,CHP=(E4E5E6E7E8E9EAEB,1),VOL=S9
WER416B  TOTAL OF 2 EXCP'S ISSUED FOR SORTING                                 
WER487I  FILESIZE 12,859 BYTES                                                 


The log shows that there is no space allocated dynamically.

WER483B 0 PREALLOCATED SORTWORK TRACKS, 0 DYNAMICALLY ALLOCATED,
WER483B 0 ACQUIRED IN SECONDARY EXTENTS, 0 RELEASED, TOTAL OF 0 TRACKS USED

What is the wrong in the code?? Please help me to resolve this.

Thanks,
Kalyan V
Back to top
View user's profile Send private message
expat

Global Moderator


Joined: 14 Mar 2007
Posts: 8797
Location: Welsh Wales

PostPosted: Fri Sep 03, 2010 12:25 pm
Reply with quote

What does it say in the documentation regarding this error ?
You have read the documentation, haven't you ?
Back to top
View user's profile Send private message
kalyan.v

New User


Joined: 04 Feb 2008
Posts: 65
Location: Hyd

PostPosted: Fri Sep 03, 2010 2:09 pm
Reply with quote

Hi Expat,

I know this error occurred due to insufficient buffer space.
So i tried to different ways like
1.Increasing work files
2.Added 'DYNALLOC' parameter
3.Reversing the files F1 and F2.

Still i am getting the error. So i am expecting some other solution for this.

Thanks,
Kalyan V
Back to top
View user's profile Send private message
PeterHolland

Global Moderator


Joined: 27 Oct 2009
Posts: 2481
Location: Netherlands, Amstelveen

PostPosted: Fri Sep 03, 2010 2:16 pm
Reply with quote

You are only talking about sort capacity exceeded, but how about this error:

WER486A ERROR IN JNF1 PROCESSING
Back to top
View user's profile Send private message
expat

Global Moderator


Joined: 14 Mar 2007
Posts: 8797
Location: Welsh Wales

PostPosted: Fri Sep 03, 2010 2:20 pm
Reply with quote

I would not say that this has much or anything to do with buffer space. If you do use technical terms, please try to make sure that what you post is accurate rather than guessing. I assume that you really mean work space.

OK, now I use DFSORT so my reading of the situation may well be wrong, but looking at your JCL it appears that you are attempting to use DYNALLOC and manual allocation of your SORTWKxx datasets.

To my mind it would be better to use either one or the other as I do not know which one will take charge. Once again looking at the output I would guess that DYNALLOC has been used as the messages indicate that preallocated datasets used 0 space.

So my first suggestion would be to remove all of the SORTWKxx statements and increase the DYNALLOC in the PARM statement. Maybe 250,50 - but that's just a guess. If that fails the nremove the DYNALLOC and preallocate the SORTWKxx datasets, again I suggest 250,50.

Obviously if that fails then it will be time to post again when hopefully some of our SYNCSORT users / support will be available for more help.

Peter, not sure if the other message is a sympton or cause of the error. I'd guess at symptom as I don't feel that the step would process with a syntax or other detected error. But hell, what do I know icon_eyes.gif
Back to top
View user's profile Send private message
PeterHolland

Global Moderator


Joined: 27 Oct 2009
Posts: 2481
Location: Netherlands, Amstelveen

PostPosted: Fri Sep 03, 2010 2:43 pm
Reply with quote

Quote:

attempting to use DYNALLOC and manual allocation of your SORTWKxx datasets


Thats sharp expat, missed that one.
Back to top
View user's profile Send private message
Anuj Dhawan

Superior Member


Joined: 22 Apr 2006
Posts: 6250
Location: Mumbai, India

PostPosted: Fri Sep 03, 2010 5:09 pm
Reply with quote

  • Your LOG does not show how many records are processed.
  • kalyan.v wrote:
    Code:

    //***************************************************************
    //STEP140  EXEC PGM=SORT,PARM='DYNALLOC=(WORK,50),VSCORET=16M'   
    //***************************************************************
    There is no use of hardcoding and giving a DYNALLOC togther. If you hard code 32 SORTWKs in the JCL, and the number you specify for DYNALLOC is also 32, then no additional SORTWKs will be dynamically allocated. The number specified in the DYNALLOC PARM is the total number of SORTWKs (JCL and dynamically allocated combined). For example, if you only hard-coded 10 SORTWKs in the JCL, then 22 could then potentially be dynamically allocated.

  • You have used VSCORET=16M, try increasing it BUT consult with your SyncSort representative on this first. Increasing that might help to solve the problem but may raise the eye-brows of storage-people. VSCORET option allows you to set the maximum amount of virtual storage below AND above the 16-megabyte line that SyncSort can use for its working set when SyncSort’s Dynamic Storage Management (DSM) facility is inactive.

  • Your LOG statistics does not seem complete - whcih one is larger between F1 and F2? The larger of the 2 files should be JNF1. I would recommend swapping SORTJNF1 and SORTJFN2, if that is the case.
Back to top
View user's profile Send private message
Anuj Dhawan

Superior Member


Joined: 22 Apr 2006
Posts: 6250
Location: Mumbai, India

PostPosted: Fri Sep 03, 2010 5:13 pm
Reply with quote

Was there any 970C Reason Code in the failed Job?

When SyncSort is called upon to take care of dynamically allocating the SORTWK space needed, it simply use the system-provided DYNALLOC facility. But if you get 970C Reason Code the system DYNALLOC facility will report an error, saying the system DYNALLOC facility was unable to acquire any more space, SyncSort then ends up failing and posts the message WER046A SORT CAPACITY EXCEEDED.

You can run a SYNCLIST to check the RETRY subparameter of the DYNALOC option. My suspicion is that it may be set to RETRY=(0,0). If this is the case, you may wish to have your system programmer modify it to reflect RETRY=(5,3) or some other value more appropriate for your site.
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> JCL & VSAM

 


Similar Topics
Topic Forum Replies
No new posts Need to set RC4 through JCL SORT DFSORT/ICETOOL 5
No new posts How to split large record length file... DFSORT/ICETOOL 10
No new posts JCL sort card - get first day and las... JCL & VSAM 9
No new posts Sort First/last record of a subset th... DFSORT/ICETOOL 7
No new posts how to calculate SUM value for VB fil... DFSORT/ICETOOL 1
Search our Forums:

Back to Top