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.
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.
Joined: 14 Mar 2007 Posts: 8797 Location: Welsh Wales
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
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.
Joined: 22 Apr 2006 Posts: 6250 Location: Mumbai, India
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.