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

Getting WER486A Error while joining 2 files using syncsort


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: Wed Dec 17, 2008 10:54 am
Reply with quote

Hi,

I have two files and i want to join those files using syncsort.
Here is my sort card.

Code:

//STEP050 EXEC PGM=SYNCSORT,REGION=0M
//**********************************************************************
//SYSOUT DD SYSOUT=*
//SORTJNF1 DD DSN=XXXX.SORT1,DISP=SHR
//SORTJNF2 DD DSN=XXXX.SORT2,DISP=SHR
//SORTWK01 DD UNIT=WORK,SPACE=(CYL,(10,10))
//SORTWK02 DD UNIT=WORK,SPACE=(CYL,(10,10))
//SORTWK03 DD UNIT=WORK,SPACE=(CYL,(10,10))
//SORTWK04 DD UNIT=WORK,SPACE=(CYL,(10,10))
//SORTOF01    DD DSN=XXXX.SORT3,
//           DISP=(NEW,CATLG,DELETE),
//           UNIT=SYSID,SPACE=(CYL,(30,30),RLSE),
//           DCB=(MODEL.DSCB,RECFM=FB,LRECL=54)
//SYSIN DD *
    JOINKEYS FILES=F1,FIELDS=(01,02,A,4,12,A)
    JOINKEYS FILES=F2,FIELDS=(01,02,A,4,12,A)
    REFORMAT FIELDS=(F1:1,100,F2:1,100)
    SORT FIELDS=COPY
    OUTFIL FILES=01,
           INCLUDE=(01,02,CH,EQ,101,02,CH,AND,04,12,CH,EQ,104,12,CH),
           OUTREC=(1,2,4,12,17,8,27,12,20X)
//*

I am getting U0016 abend with message mentioned as below.
WER486A ERROR IN BOTH JNF1 AND JNF2 PROCESSING
WER046A SORT CAPACITY EXCEEDED
WER066A APROX RCD CNT 566

How could i solve this??

Thanks
Back to top
View user's profile Send private message
Arun Raj

Moderator


Joined: 17 Oct 2006
Posts: 2481
Location: @my desk

PostPosted: Wed Dec 17, 2008 11:00 am
Reply with quote

kalyan.v,

The 'WER' messages indicate that you're using SyncSort and NOT DFSORT. Please be aware that Questions related to SyncSort are discussed in JCL forum.
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


Joined: 23 Nov 2006
Posts: 19244
Location: Inside the Matrix

PostPosted: Wed Dec 17, 2008 11:15 am
Reply with quote

Hello,

Code:
//SORTJNF1 DD DSN=XXXX.SORT1,DISP=SHR
//SORTJNF2 DD DSN=XXXX.SORT2,DISP=SHR
What are the attributes of these files and how many records are in each? Hopefully, these are not partitioned datasets.

Suggest you remove the model.dscb unless there is some site-specific requirement.

There may be additonal diagnostic info in the jes output - if there is, post the message(s) as well as their id(s).
Back to top
View user's profile Send private message
Arun Raj

Moderator


Joined: 17 Oct 2006
Posts: 2481
Location: @my desk

PostPosted: Wed Dec 17, 2008 11:16 am
Reply with quote

kalyan.v,

Try increasing the SORTWKnn allocations. BTW, How many records do you have in the input files?
Back to top
View user's profile Send private message
kalyan.v

New User


Joined: 04 Feb 2008
Posts: 65
Location: Hyd

PostPosted: Wed Dec 17, 2008 11:21 am
Reply with quote

Hi,

I tried by increasing SORTWKnn files.But getting the same message.
I have 2,00,000 records in one file and 1,00,000 in another file.

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

Senior Member


Joined: 03 Jul 2007
Posts: 1287
Location: Chennai, India

PostPosted: Wed Dec 17, 2008 11:25 am
Reply with quote

Kalyan,

Quote:
WER486A ERROR IN BOTH JNF1 AND JNF2 PROCESSING


The error has occured while processing the SORTJNF1 and SORTJNF2 datasets. Please refer to the SYSOUT for the exact nature of the error.

Quote:
WER046A SORT CAPACITY EXCEEDED


All available storage is exhausted including the secondary allocation. Sort processing cannot continue.

Supply more intermediate storage using SORTWK or use the MAXSORT technique.

Quote:
WER066A APROX RCD CNT 566


Sort capacity exceeded and hence sort terminated. 566 is the approx no of records processed before termination.
Back to top
View user's profile Send private message
Aaru

Senior Member


Joined: 03 Jul 2007
Posts: 1287
Location: Chennai, India

PostPosted: Wed Dec 17, 2008 11:27 am
Reply with quote

Kalyan,

Quote:
I tried by increasing SORTWKnn files


Did you try increasing the space? Please post the sort work file attributes.
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


Joined: 23 Nov 2006
Posts: 19244
Location: Inside the Matrix

PostPosted: Wed Dec 17, 2008 11:30 am
Reply with quote

Hello,

As i asked earlier - what are the attributes for the F1 and F2 files?

Suggest you check with the storage admin people and make sure the work volumes are not filled before you start.

As i also mentioned earlier there may be more diagnostic info. If there is, post it along with any message ids.
Back to top
View user's profile Send private message
kalyan.v

New User


Joined: 04 Feb 2008
Posts: 65
Location: Hyd

PostPosted: Wed Dec 17, 2008 11:33 am
Reply with quote

Aaru,

I increase sortwknn files to 10.

file attributes are,
UNIT=WORK,SPACE=(CYL,(20,20))


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

Senior Member


Joined: 03 Jul 2007
Posts: 1287
Location: Chennai, India

PostPosted: Wed Dec 17, 2008 11:36 am
Reply with quote

Kalyan,

Quote:
UNIT=WORK,SPACE=(CYL,(20,20))


You will have to use maximum no of cylinders. I think you can use MAX of 1500 cylinders primary and secondary.

Give that a try.

Also post the details which Dick had asked.
Back to top
View user's profile Send private message
Arun Raj

Moderator


Joined: 17 Oct 2006
Posts: 2481
Location: @my desk

PostPosted: Wed Dec 17, 2008 11:39 am
Reply with quote

Kalyan.

Try increasing the cylinders from 20 to 100. What about these?
Quote:
As i asked earlier - what are the attributes for the F1 and F2 files?
Back to top
View user's profile Send private message
kalyan.v

New User


Joined: 04 Feb 2008
Posts: 65
Location: Hyd

PostPosted: Wed Dec 17, 2008 11:47 am
Reply with quote

HI,

Here are the file attributes.
//SORTJNF1 DD DSN=XXXX.SORT1,DISP=SHR -- RECFM=FB, LRECL=100
//SORTJNF2 DD DSN=XXXX.SORT2,DISP=SHR -- RECFM=FB, LRECL=100

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

Senior Member


Joined: 03 Jul 2007
Posts: 1287
Location: Chennai, India

PostPosted: Wed Dec 17, 2008 1:31 pm
Reply with quote

Kalyan,

Did you try increasing the no of cylinders for the SORT work files? Try and let us know.
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


Joined: 23 Nov 2006
Posts: 19244
Location: Inside the Matrix

PostPosted: Wed Dec 17, 2008 8:24 pm
Reply with quote

Hello,

The space specified is more than enough for that data volume.

I suspect that there is/was limited space available for unit=work when the problem job was run.
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


Joined: 23 Nov 2006
Posts: 19244
Location: Inside the Matrix

PostPosted: Thu Dec 18, 2008 9:26 am
Reply with quote

Hello,

Is this now working? If not:
Quote:
Did you try increasing the no of cylinders for the SORT work files? Try and let us know.


If it fails again, please post the complete informational output from the sort.
Back to top
View user's profile Send private message
kalyan.v

New User


Joined: 04 Feb 2008
Posts: 65
Location: Hyd

PostPosted: Thu Dec 18, 2008 10:17 am
Reply with quote

Hi,

I didn't solved the issue using sync sort.
So i used ICETOOL.
It is executing successfully but i am not getting the output properly.
Here is my code.

Code:

//STEP050 EXEC PGM=ICETOOL
//********************************************************************
//SYSOUT DD SYSOUT=*
//TOOLMSG DD SYSOUT=*
//DFSMSG  DD SYSOUT=*
//IN1      DD DSN=XXXX.SORT1,DISP=SHR
//IN2      DD DSN=XXXX.SORT2,DISP=SHR
//T1       DD DSN=&&T1,DISP=(MOD,PASS),SPACE=(CYL,(10,10),RLSE)
//OUT         DD DSN=XXXX.SORTE,
//           DISP=(NEW,CATLG,DELETE),
//           UNIT=SYSID,SPACE=(CYL,(30,30),RLSE),
//           DCB=(MODEL.DSCB,RECFM=FB,LRECL=70)
//TOOLIN DD *
         COPY FROM(IN2) TO(T1) USING(CTL1)
         COPY FROM(IN1) TO(T1) USING(CTL2)
         SPLICE FROM(T1) TO(OUT) ON(1,15,CH) WITH(16,40)
/*
//CTL1CNTL DD *
         OUTREC BUILD=(1,2,X,4,12,32X,17,8)
/*
//CTL2CNTL DD *
         OUTREC BUILD=(1,2,X,4,12,16,22,40,8)
/*


The inputs are like below.
Code:

IN1:
                17(6)  24(15)               40(8)
BC AA0029       750004 XXXXXXXXXXXXX         1
BC AA0060       760005 YYYYYYYYYYYYYYY       2
BC AA0413       038239 ZZZZZZZZZZZZZ         1
BC AA0415       019151 XXXXXXXYYYYYYY        2

IN2:
                      17(8)    26(12)
BC AA0060              5        +00000039842
BC AA0415              5        +00000011177
BC AA0582              1        +00000000000
BC AA0687             11        +00000031013


OUTPUT :
BC AA0060       760005 YYYYYYYYYYYYYYY       2   5        +00000039842
BC AA0415       019151 XXXXXXXYYYYYYY        2   5        +00000011177


I need Output like above only matching fields from IN2.

I am getting the output like below.   
                           
BC AA0060       760005 YYYYYYYYYYYYYYY        2..........8549    010800
BC AA0415       019151 XXXXXXXYYYYYYY         2..........POS/FSPPO I.E.
                                                  <----Junk Data--------->

After 45th byte i am getting Junk values.

How can i get the exact output.

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

Senior Member


Joined: 03 Jul 2007
Posts: 1287
Location: Chennai, India

PostPosted: Thu Dec 18, 2008 10:29 am
Reply with quote

Kalyan,

Quote:
I didn't solved the issue using sync sort.


OK.

Quote:
So i used ICETOOL.


You should have used SYNCTOOL instead of ICETOOL. ICETOOL is shipped with DFSORT and SYNCTOOL with SYNCSORT.


Quote:
Here is my code using DFSORT.


Do you have both SYNCSORT and DFSORT installed in your shop?


Are your output error messages starting with WER or ICE??
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


Joined: 23 Nov 2006
Posts: 19244
Location: Inside the Matrix

PostPosted: Thu Dec 18, 2008 10:30 am
Reply with quote

Hello,

Quote:
please post the complete informational output from the sort.
Make sure to include the message ids as well as the message text.
Back to top
View user's profile Send private message
kalyan.v

New User


Joined: 04 Feb 2008
Posts: 65
Location: Hyd

PostPosted: Thu Dec 18, 2008 12:19 pm
Reply with quote

Hi ,

I got the result in expected format using below sort card. But i am getting only matched records from both files.I need all records from IN2.(In IN2 some are matched with IN1.)


Code:

//TOOLIN DD *
         COPY FROM(IN2) TO(T1) USING(CTL1)
         COPY FROM(IN1) TO(T1)
         SPLICE FROM(T1) TO(OUT) ON(1,15,CH) WITH(1,47)
/*
//CTL1CNTL DD *
         INREC BUILD=(1:1,15,50:17,21)
/*


What can i do to get that??

Thanks,
Kalyan
Back to top
View user's profile Send private message
kalyan.v

New User


Joined: 04 Feb 2008
Posts: 65
Location: Hyd

PostPosted: Thu Dec 18, 2008 12:54 pm
Reply with quote

Hi,

If i am trying for exact output explained above using below sort card, again i am getting error as SORT CAPACITY EXCEEDED.The message is here.

WER162B 0 PREALLOCATED SORTWORK TRACKS, 0 DYNAMICALLY ALLOCATED,
WER162B 0 ACQUIRED IN SECONDARY EXTENTS, 0 RELEASED, TOTAL OF 0 TRACKS USED
WER407I UNUSABLE SORTWORK DEVICE ALLOCATED, UNIT=VIO
WER046A SORT CAPACITY EXCEEDED
WER055I INSERT 0, DELETE 0
WER211B SYNCSMF CALLED BY SYNCSORT; RC=0000
WER066A APROX RCD CNT 20

My code is below

Code:


//STEP050 EXEC PGM=ICETOOL
//*********************************************************************
//SYSOUT DD SYSOUT=*
//TOOLMSG DD SYSOUT=*
//DFSMSG  DD SYSOUT=*
//IN1      DD DSN=XXXX.SORTA,DISP=SHR
//IN2      DD DSN=XXXX.SORTC,DISP=SHR
//T1       DD DSN=&&T1,DISP=(MOD,PASS),SPACE=(CYL,(300,300),RLSE)
//OUT         DD DSN=XXXX.SORTE,
//           DISP=(NEW,CATLG,DELETE),
//           UNIT=SYSID,SPACE=(CYL,(30,30),RLSE),
//           DCB=(MODEL.DSCB,RECFM=FB,LRECL=72)
//TOOLIN DD *
         COPY FROM(IN2) TO(T1) USING(CTL1)
         COPY FROM(IN1) TO(T1)
         SPLICE FROM(T1) TO(OUT) ON(1,15,CH) WITH(1,47) USING(CTL2)
/*
//CTL1CNTL DD *
         INREC BUILD=(1:1,15,50:17,21,72:C'2')
/*
//CTL2CNTL DD *
         OUTFIL FNAMES=OUT,INCLUDE=(72,1,CH,EQ,C'2')
/*


So what can i do??

Thanks,
Kalyan
Back to top
View user's profile Send private message
Arun Raj

Moderator


Joined: 17 Oct 2006
Posts: 2481
Location: @my desk

PostPosted: Thu Dec 18, 2008 1:34 pm
Reply with quote

Kalyan,

The real problem is not with the JOIN. I would suggest you to go back to the JOIN as it offers more performance than the SPLICE you used above which involves multiple passes of data.

Quote:
WER162B 0 PREALLOCATED SORTWORK TRACKS, 0 DYNAMICALLY ALLOCATED,
WER162B 0 ACQUIRED IN SECONDARY EXTENTS, 0 RELEASED, TOTAL OF 0 TRACKS USED
WER407I UNUSABLE SORTWORK DEVICE ALLOCATED, UNIT=VIO
WER046A SORT CAPACITY EXCEEDED


You are tying to use an unusable UNIT parameter and you have ZERO tracks available for sorting. Correct this and try again.
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


Joined: 23 Nov 2006
Posts: 19244
Location: Inside the Matrix

PostPosted: Thu Dec 18, 2008 2:23 pm
Reply with quote

Hello,

Quote:
I didn't solved the issue using sync sort.
So i used ICETOOL.
Your system uses the Syncproducts, so that is what you will use. In your environment, ICETOOL actually invokes Synctool (*it is done with alias).

Suggest you make the modifications Arun posted and we can proceed from there if there are any problems/surprises.
Back to top
View user's profile Send private message
kalyan.v

New User


Joined: 04 Feb 2008
Posts: 65
Location: Hyd

PostPosted: Thu Dec 18, 2008 4:56 pm
Reply with quote

Hi,

I solved the issue using syncsort.

Thanks to all for help.

Thanks,
Kalyan
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


Joined: 23 Nov 2006
Posts: 19244
Location: Inside the Matrix

PostPosted: Thu Dec 18, 2008 10:18 pm
Reply with quote

You're welcome - good to hear it is working icon_smile.gif

Thank you for letting us know,

d
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 Error to read log with rexx CLIST & REXX 11
No new posts Error when install DB2 DB2 2
No new posts Write line by line from two files DFSORT/ICETOOL 7
No new posts Compare only first records of the fil... SYNCSORT 7
No new posts CLIST - Virtual storage allocation error CLIST & REXX 5
Search our Forums:

Back to Top