SB37 abend in Join Keys



IBM's flagship sort product DFSORT for sorting, merging, copying, data manipulation and reporting. Includes ICETOOL and ICEGENER

SB37 abend in Join Keys

Postby ragsara » Wed Jan 21, 2015 9:26 am

Hi ,

Problem statement : Need to find out if a person (First name , Last name and DOB) has more than one unique ID. A person can have more than one record in the file.

Solution approach : Copy the file and use it to match against the original file using the key value (First name, Last name and DOB). If Key values match write the two records (Original File and Duplicate file) consecutively in the output file. Later using INclude condition , compare the Key values, write the record if it has different uniuqe ID's.

File lay out (Starting position, Length) : FB , LRECL = 206

Partition number : 1,5
UNique ID : 6,10
Other Fields : 16,86
Last NAme: 102,60
First NAme : 162,35
DOB : 197,10

//STEP3    EXEC PGM=SORT                                   
//SYSOUT   DD SYSOUT=*                                     
//SORTIN   DD DUMMY                                       
//SORTJNF1 DD DSN=F6435T.EHP.L6435CNS.D2150120,DISP=SHR   
//SORTJNF2 DD DSN=F6435T.EHP.L6435CNS.D2150120.DUP,DISP=SHR
//OUT12  DD DSN=F6435T.EHP.L6435CNS.D2150120.BOTH,         
//         DISP=(NEW,CATLG,DELETE),                       
//         SPACE=(CYL,(4350,9000),RLSE),UNIT=(,56)         
//OUT1   DD DSN=F6435T.EHP.L6435CNS.D2150120.ONLY,         
//         DISP=(NEW,CATLG,DELETE),                       
//         SPACE=(CYL,(4350,9000),RLSE),UNIT=(,56)         
//OUT2   DD DSN=F6435T.EHP.L6435CNS.D2150120.DUP.ONLY,     
//         DISP=(NEW,CATLG,DELETE),                       
//         SPACE=(CYL,(4350,9000),RLSE),UNIT=(,56)         
//JNF1CNTL DD *                                           
  OPTION DYNALLOC=(,256),FILSZ=E10000000000               
/*                                                         
//JNF2CNTL DD *                                           
  OPTION DYNALLOC=(,256),FILSZ=E10000000000               
/*                                                         
//SYSIN    DD *                                 
  JOINKEYS FILE=F1,FIELDS=(102,105,A)           
  JOINKEYS FILE=F2,FIELDS=(102,105,A)           
  JOIN UNPAIRED,F1,F2                           
  REFORMAT FIELDS=(F1:1,206,F2:1,206,?)         
  OPTION COPY                                   
  OUTFIL FNAMES=OUT12,INCLUDE=(413,1,CH,EQ,C'B'),
  BUILD=(1,412)                                 
  OUTFIL FNAMES=OUT1,INCLUDE=(413,1,CH,EQ,C'1'),
  BUILD=(1,206)                                 
  OUTFIL FNAMES=OUT2,INCLUDE=(413,1,CH,EQ,C'2'),
  BUILD=(207,206)                               
/*                                               
//DFSPARM DD *                                   
  OPTION DYNALLOC=(,256),FILSZ=E10000000000     
/*                                               


Help required :

Both the files which am comparing have 488948457 (488 Million records) each. This job abended stating ABEND=SB37 U0000 REASON=00000004

1) Will i be able to compare such huge files using SORT ? or is there any better solution approach to my problem statement

Thanks in advance for you help

Error message :

IEF403I TSUEGDUA - STARTED - TIME=18.11.17                   
IEC030I B37-04,IFG0554A,TSUEGDUA,STEP3,OUT12,3A46,PSL660,  141
F6435T.EHP.L6435CNS.D2150120.BOTH                             
IEA995I SYMPTOM DUMP OUTPUT  143                             
SYSTEM COMPLETION CODE=B37  REASON CODE=00000004             
 TIME=18.56.59  SEQ=62375  CPU=0000  ASID=010B               
 PSW AT TIME OF ERROR  075C1000   80E57926  ILC 2  INTC 0D   
   NO ACTIVE MODULE FOUND                                     
   NAME=UNKNOWN                                               
   DATA AT PSW  00E57920 - 41003038  0A0DB20A  00509808       
   AR/GR 0: 009FF320/00E57B34   1: 00000000/A4B37000         
         2: 00000000/00011248   3: 00000000/00E57AFC         
         4: 00000000/009CD4A8   5: 00000000/00E6E000         
         6: 00000000/009CD74C   7: 00000000/009CD7A4         
         8: 00000000/009CD76C   9: 00000000/009CE7C0         
         A: 00000000/00797700   B: 00000000/00E575B2         
         C: 00000000/009B5D58   D: 00000000/7F5EECE8         
         E: 00000000/00E575B2   F: 00000000/00000004         
 END OF SYMPTOM DUMP                                         
IEF450I TSUEGDUA STEP3 - ABEND=SB37 U0000 REASON=00000004  153
OPS1000J                                                     
ragsara
 
Posts: 23
Joined: Thu Mar 22, 2012 5:17 pm
Has thanked: 0 time
Been thanked: 0 time

Re: SB37 abend in Join Keys

Postby BillyBoyo » Wed Jan 21, 2015 1:16 pm

Why are you estimating at 10 billion records when you "only" have 488m? Why are you estimating anyway?

Why do you want to write all of your data, not just the matches?

You are SORTing the data twice. Each time you attempt the job. If a massive JOINKEYS needing the same file twice, SORT to a permananet file in one step, use that for both JOINKEYS with SORTED,NOSEQCK.

No, you don't need JOINKEYS. .
BillyBoyo
Global moderator
 
Posts: 3804
Joined: Tue Jan 25, 2011 12:02 am
Has thanked: 22 times
Been thanked: 265 times

Re: SB37 abend in Join Keys

Postby Robert Sample » Wed Jan 21, 2015 6:17 pm

Have you contacted your site support group? The SB37 indicates a storage problem and your site support group would be the best group to help you resolve such issues.
Robert Sample
Global moderator
 
Posts: 3719
Joined: Sat Dec 19, 2009 8:32 pm
Location: Dubuque, Iowa, USA
Has thanked: 1 time
Been thanked: 279 times


Return to DFSORT/ICETOOL/ICEGENER

 


  • Related topics
    Replies
    Views
    Last post